DIAGRAMA DE CLASES
¿QUE SON?
Son diagramas de estructura estática, que muestran las clases del sistema y sus interrelaciones.
¿PARA QUE SIRVE?
Sirve para visualizar las relaciones entre las clases que involucra el sistema, las cuales pueden ser asociativas, de herencia, de composición y de agregación.
VENTAJAS
1. Genera un código automáticamente.
2. Propone soluciones a algunos errores.
3. Representa las relaciones entre las clases de sistema.
4. Se diseña los componentes de los sistemas.
5. Se protegen los datos.
6. Se posibilita una reducción de acoplamiento.
7. Mas fácil la comunicación entre los programadores, descubrimiento de fallas del sistema en el diseño, ademas, mejor diseño del sistema ofrece más documentación.
DESVENTAJAS
1. Los diagramas de clases especifican qué clases hay y cómo están relacionadas, pero no cómo interactúan para alcanzar comportamientos particulares.
ELEMENTOS
Un diagrama de clases esta compuesto por los siguientes elementos:
CLASES
Las clases son el molde, la base o el marco de la construcción de un objeto, se identifican con un rectangulo y
A su vez, contiene los siguientes elementos:
ATRIBUTOS
Los atributos son las características o propiedades que tiene un objeto de la vida real.
METODOS
Los métodos o funciones son las acciones o comportamientos que puede tener un objeto de la vida real.
VISIBILIDAD: (MODIFICADORES DE ACCESO)
Los modificadores de acceso son los encargados de mostrar u ocultar los datos de un sistema de información.
Este se divide en tres modificadores:
(+) PUBLIC
Indica que el atributo será visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.
(#) PROTECTED
Indica que el atributo sólo será accesible desde dentro de la Clase (sólo sus métodos lo pueden accesar).
(-)PRIVATE
Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de las subclases que se deriven.
()DEFAULT
Indica que el atributo sera
accesible desde clases y
paquetes internos, no aplica
para la herencia.
INTERRELACIONES
Se refiere al como se pueden interrelacionar dos o más clases (cada uno con características y objetivos diferentes). Las interrelaciones pueden ser:
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
Indica que una subclase hereda los métodos y atributos especificados por una superclase, de esta forma la subclase además de poseer sus propios métodos y atributos, poseerá las características y atributos visibles de la superclase (public y protected).
AGREGACION
Aquí indicamos que un elemento dependerá de muchos otros.
tomamos como referencia la multiplicidad del elemento;
lo que se conoce en bases de datos como relaciones de uno
a muchos, es decir, una clase contiene varios elementos de la otra.
COMPOSICION
Es similar al anterior, pero aqui
estan completamente compenetrados y si una clase desaparece, la otra no puede funcionar.