Beruflich Dokumente
Kultur Dokumente
LAS CLASES
DEFINICIN
Un diagrama de clases es un tipo de diagrama esttico que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellas. Los diagramas de clases son utilizados durante el proceso de anlisis y diseo de los sistemas, donde se crea el diseo conceptual de la informacin que se manejar en el sistema. Nos sirve para visualizar las relaciones entre las clases que involucran el sistema.
DEFINICIN
Un diagrama de clases est compuesto por los siguientes elementos: Clase: atributos, mtodos y visibilidad Relaciones: Herencia, Composicin, Agregacin, Asociacin y Uso Responsabilidades:
Una responsabilidad es un contrato u obligacin de una clase, sea, el fin para el que es creada. Se reduce a un conjunto de atributos y operaciones. Por ejemplo, una clase SensorTemperatura es responsable de medir la temperatura y disparar una alarma si esta alcanza una temperatura determinada
clase define el conjunto de atributos y comportamientos compartidos por cada objeto de la clase. Por ejemplo, los registros de los estudiantes en la seccin de un curso almacenan informacin similar para cada estudiante. Se podra decir que los estudiantes constituyen una clase. Los valores podran ser diferentes para cada estudiante, pero el tipo de informacin es el mismo. Es la unidad bsica que encapsula toda la informacin de un Objeto (un objeto es una instancia de una clase). A travs de ella podemos modelar el entorno en estudio (una Casa, un Auto, una Cuenta Corriente, etc.).
todas las dems. Los nombres de clase normalmente son sustantivos o frases cortas y empiezan con una letra mayscula.
Se representa mediante un rectngulo con hasta tres
compartimentos:
Nombre de la case Lista de atributos Lista de mtodos
OBJETO:
Un objeto es una instancia individual de una clase, as
podramos tener una clase que fuera los monitores y un objeto de la clase monitores que fuera un monitor marca A de 17 pulgadas, con la pantalla plana.
Los objetos son personas, lugares o cosas que son
relevantes para el sistema bajo anlisis. Los objetos podran ser clientes, artculos, pedidos, etc. Los objetos tambin podran ser pantallas GUI o reas de texto en la pantalla.
con un nombre. Los atributos representan propiedades comunes a todos los objetos de una determinada clase, por ejemplo todos los monitores tienen la propiedad dimensin, que se suele medir en pulgadas. Un cliente tiene las propiedades nombre, apellidos, direccin, telfono...
El nombre de los atributos es un texto que normalmente
se escribe en minsculas si slo es una palabra o la primera palabra del nombre del atributo en minsculas y el resto de las palabras con la primera letra en maysculas, por ejemplo, nombrePropietario.
dentro como fuera de la clase, es decir, es accesible desde todos lados. private (-, ): Indica que el atributo slo ser accesible desde dentro de la clase (slo sus mtodos lo pueden accesar). protected (#, ): Indica que el atributo no ser accesible desde fuera de la clase, pero si podr ser accesado por mtodos de la clase adems de las subclases que se deriven (herencia).
objeto. Multiplicidad: Determinar si un atributo debe estar o no, y si posee un nico valor o una lista de valores.
Descripcin El atributo debe tener un nico valor. El atributo puede o no tener un valor. El atributo puede tener varios valores o ninguno. El atributo puede tener varios valores, pero debe tener al menos uno El atributo puede tener varios valores El atributo puede tener entre M y N valores.
cualquier objeto de la clase. Los mtodos son los procesos que una clase sabe cmo realizar.
Un mtodo representa algo que el objeto puede hacer.
Por ejemplo, un comportamiento esperado por cualquier usuario de un monitor es que este se pueda encender y apagar.
Los mtodos de una clase son la forma en como sta
primera letra es minscula. El nombre de las operaciones sigue las mismas reglas de notacin que los atributos. Suelen ser verbos cortos que indican una accin o comportamiento de la clase: cerrar(), calcularEdad, calcularHorasTrabajadas Para cada mtodo debe especificarse Tipo devuelto: puede llegar a depender del lenguaje de programacin a utilizar. Parmetros: Especificacin del tipo de datos y la informacin que determina el funcionamiento de la clase. Visibilidad: est relacionado con el encapsulamiento (-, #, +) Modificadores: una operacin puede ser de clase, abstracta, query o constructor.
El mtodo pblico calcularHorasTrabajadas es abstracto,, las subclases de la clase Persona deber implementarlo para utilizarlo.
que un cambio en la especificacin del elemento independiente puede afectar al otro elemento implicado en la relacin. Determinamos el elemento dependiente aquel que necesita del otro elemento implicado en la relacin (el independiente) para poder cumplir sus responsabilidades.
Un tipo comn de dependencia es la relacin de dos
clases cuando una de ellas utiliza a la otra como parmetro de una operacin. Por ejemplo, una clase que representa un aparato reproductor Vdeo. Para utilizar el mtodo grabar(), se depende directamente de la clase Canal ya que grabar depende de cual canal tenga seleccionado aparato de vdeo.
superclase o padre) y un caso ms especfico de ese elemento (llamado subclase o hijo). La generalizacin a veces es llamada relacin es-un-tipo-de; es decir, un elemento (una clase Rectngulo) es-un-tipo-de un elemento ms general (la clase figura).
La generalizacin implica que los objetos hijo se pueden
mtodos de sus clases padre y a menudo (no siempre) el hijo extiende los atributos y operaciones del padre
operacin de un hijo puede tener la misma signatura que en el padre pero la operacin puede ser redefinida por el hijo; esto es lo que se conoce como polimorfismo.
Una clase sin padres y uno o ms hijos se denomina clase raz o clase base.
Una clase sin hijos se denomina clase hoja. Una clase con un nico padre se dice que utiliza herencia
simple y una clase con varios padres se dice que utiliza herencia mltiple.
que los objetos de un elemento estn conectados con los objetos de otro. Dada una asociacin entre dos clases, se puede navegar desde un objeto de una de ellas hasta uno de los objetos de la otra, y viceversa.
Tambin es posible, aunque menos frecuente, que se
conecten ms de dos clases, estas se suelen llamar asociaciones n-arias. Las relaciones de asociaciones se utilizan cuando se quieren representar relaciones estructurales.
La
relacin entre clases conocida como asociacin, permite asociar objetos que colaboran entre si. Cabe destacar que no es una relacin fuerte, es decir, el tiempo de vida de un objeto no depende del otro.
Un cliente puede tener asociadas muchas Ordenes de Compra, en cambio una orden de compra solo puede tener asociado un cliente.
esta tiene un rol especifico asociacin. El rol es la cara que la clase que se encuentra en clases pueden jugar el mismo otras asociaciones.
que juega en dicha dicha clase presenta a el otro extremo. Las o diferentes roles en
es conveniente sealar cuantos objetos se pueden conectar a travs de una instancia de la asociacin. La multiplicidad se expresa como un rango de valores o un valor explicito. Cuando se indica multiplicidad en un extremo de una asociacin se est indicando que, para cada objeto de la clase en el extremo opuesto debe haber tantos objetos en este extremo. Se puede indicar una multiplicidad de: o Exactamente uno (1) o Cero o uno (0..1) o Muchos (0..*) o Uno o ms (1..*) e incluso un numero exacto (por ejemplo, 5).
(Por referencia): A veces interesa representar relaciones del tipo todo/parte, en las cuales una cosa representa la cosa grande (el todo) que consta de elementos ms pequeos (las partes). Este tipo de relacin se denomina de agregacin la cual representa una relacin del tipo tiene-un. La agregacin es un tipo de relacin dinmica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye (el objeto base utiliza al incluido para su funcionamiento). Una agregacin es slo un tipo especial de asociacin, esta se especifica aadiendo simplemente un rombo vaco en la parte del todo.
esttica, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye. Este tipo de relacin es comnmente llamada Composicin (el Objeto base se construye a partir del objeto incluido, es decir, es "parte/todo").