Clase 2
ANÁLISIS Y DISEÑO DE SISTEMAS II
TRABAJO DE INVESTIGACIÓN
Lic. ELIZA ARIZACA
Diagramas de Clases
El Diagrama de Clases es el diagrama principal para el análisis y diseño. Un diagrama de clases presenta las clases del sistema con sus relaciones estructurales y de herencia. La definición de clase incluye definicionespara atributos y operaciones. El modelo de casos de uso aporta información para establecer las clases, objetos, atributos y operaciones.
El mundo real puede ser visto desde abstracciones diferentes (subjetividad)
NOTACION.-
Cada clase se representa en un rectángulo con tres compartimientos:
|Nombre de la |
|Clase 1 |
|Atributo 1|
|Atributo 2 |
|................. |
|Operacion1( ) |
|Operacion2( ) |
|................. |
• Nombre de la clase
• Atributos de la clase
• Operaciones de la clase
Atributos:
Los atributos de una clase no deberían ser manipulables directamente por el resto de objetos. Poresta razón se crearon niveles de visibilidad para los elementos que son:
Privado (-): es el más fuerte. Esta parte es totalmente invisible (excepto para clases friends en terminología C++).
Protegido (#): Los atributos/operaciones protegidos están visibles para las clases friends y para las clases derivadas de la original.
Público (+): Los atributos/operaciones públicos son visiblesa otras clases (cuando se trata de atributos se está transgrediendo el principio de encapsulación).
Métodos:
Los métodos u operaciones de una clase son la forma en como ésta interactúa con su entorno, éstos pueden tener las características:
Privado (-): Indica que el método sólo será accesible desde dentro de la clase (sólo otros métodos de la clase lo pueden acceder).
Protegido(#): Indica que el método no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de métodos de las subclases que se deriven (ver herencia).
Público (+): Indica que el método será visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados.
Ejemplos de Clases:
|Alumno |
|- Nombre|
|- Dirección |
|- Carnet_Identidad |
|+ Estudiar( ) |
|+ Tomar_apuntes( ) |
|Automóvil |
|- Ruedas |
|- Asientos |
|- Puertas |
|+ Arrancar ( ) |
|+ Acelerar ( ) |
|+ Frenar () |
|+ Girar ( ) |
|Cliente |
|- Nombre |
|- Dirección |
|- Teléfono |
|+ Comprar ( ) |
|+ Devolver ( ) |
Relaciones entre clases:
Los enlaces entre objetos pueden representarse entre las respectivas clases y sus formas derelación son:
• Asociación
• Agregación (vista como un caso particular de asociación)
• Generalización/Especialización.
Las relaciones de Agregación y Generalización forman jerarquías de clases.
Asociación:
La asociación expresa una conexión bidireccional entre objetos. Una asociación es una abstracción de la relación existente en los enlaces entre los objetos. Puededeterminarse por la especificación de multiplicidad (mínima...máxima)
[pic]
Multiplicidad:
Representa el número de objetos que pueden conectarse a través de una relación de asociación.
Existen tres tipos de multiplicidad o cardinalidad.
- Uno a Uno
- Uno a Muchos
- Muchos a Muchos
|Notación |Lectura |
|1...
Regístrate para leer el documento completo.