miércoles, 16 de octubre de 2013

Diagrama de Clases

* Diagrama de Clases *

Son diagramas de estructura estática que muestran las clases del sistema y sus interrelaciones (incluyendo herencia, agregación, asociación, etc.). Los diagramas de clases son el pilar básico del modelado con UML siendo utilizados tanto para mostrar lo que el sistema puede hacer (análisis), como para mostrar como puede ser construido (diseño).

Elementos :
  1. Clase : Es la unidad básica que encapsula toda la información de un Objeto (un objeto es una instancia de una clase). A través de ella podemos modelar el entorno en estudio (una Casa, un Auto, una Cuenta Corriente, etc.).

En UML, una clase es representada por un rectángulo que posee tres divisiones:
En donde :

  • Superior: Contiene el nombre de la Clase
  • Intermedio: Contiene los atributos (o variables de instancia) que caracterizan a la Clase (pueden ser private, protected o public).
  • Inferior: Contiene los métodos u operaciones, los cuales son la forma como interactúa el objeto con su entorno (dependiendo de la visibilidad: private, protected o public).

    2.  Atributos : Son valores que corresponden a un objeto como color, material, cantidad, ubicación.
  • Publico - Public : (+ ; ) : Indica que el atributo sera visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lado.
  • Privado - Private : ( - ;) : Indica que el atributo soló será accesible desde dentro de la clase (solo sus métodos lo pueden accesar). 
  • Protegido - Protected : ( # ;) : Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase, ademas de las subclases que se deriven.
   
   3.  Métodos o Operaciones : Son aquellas actividades que se pueden realizar con o para un objeto, como por ejemplo abrir, cerrar, buscar, cancelar, confirmar, cargar. 
  • Publico - Public : (+ ;) : Indica que el método sera visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.
  • Privado - Private : ( - ;): Indica que el método solo sera accesible desde dentro de la clase (soló otros métodos de la clase lo pueden accesar).
  • Protegido - Protected : ( # ;): Indica que el método no sera accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase, ademas de métodos de las subclases que se deriven.

Relaciones entre clases : Simbología
  • Asociación :  
La relación entre clases conocida como Asociación, permite asociar objetos que colaboran entre si. Cabe destacar que no es una relación fuerte, es decir, el tiempo de vida de un objeto no depende del otro.
  • Herencia (Generalización/Especificación) : 
Indica que una subclase hereda los métodos y atributos especificados por una Super-clase, por ende la Subclase además de poseer sus propios métodos y atributos, poseerá las características y atributos visibles de la Super-clase (public y protected).
  • Dependencia o Instanzación (uso) : 
Representa un tipo de relación muy particular, en la que la clase es instanciada (su instanciación es dependiente de otro objeto/clase). Se denota por una flecha punteada.

El uso mas particular de este tipo de relación es para denotar la dependencia que tiene una clase de otra.
  • Agregación : 
- Por referencia : 
Es un tipo de relación dinámica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye. Este tipo de relación es comúnmente llamado Agregación (el objeto base utiliza al incluido para su funcionamiento).

- Por valor : Es un tipo de relación estática, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye. Este tipo de relación es comúnmente llamada Composición (el objeto base construye a partir del objeto incluido, es decir, es "parte/todo").



Mas sobre Diagrama de Clases: 
Guía de D. Clases 1
Guía de D. Clases 2

No hay comentarios.:

Publicar un comentario