Diagramas de Clase
Angela Carrillo R.
Clase
Descripcin de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semntica Implementa una o ms interfaces
Mtodos/Operaciones
09/01/2008
Atributos
Propiedad de una clase identificada con un nombre, que describe un rango de valores que pueden tomar las instancias de la propiedad Representa alguna propiedad del elemento que se est modelando que es compartida por todos los objetos de esa clase. clase.
Mtodo/Operacin
Implementacin de un servicio que puede ser requerido a cualquier objeto de la clase para que muestre un comportamiento. comportamiento. Abstraccin de algo que se puede hacer a un objeto y que es compartido por todos los objetos de la clase. clase.
09/01/2008
Otros componentes
Responsabilidad:
Contrato u obligacin de una clase
El polgono es responsable de dibujarse, saberse trasladar, calcular su rea y permetro, sabe dar su color
Relaciones
Conexin entre elementos
Dependencias: Dependencias: relaciones de uso entre clases Generalizaciones: Generalizaciones: conectan clases generales con sus especializaciones
Superclase/Subclase Padre/Hijo
09/01/2008
Ejemplo de relaciones
Asociacin Dependencia
Generalizacin
Relacin de Dependencia
Relacin de uso que declara que un elemento utiliza la informacin y los servicios de otro elemento pero no necesariamente a la inversa Un elemento utiliza a otro
Una clase utiliza las operaciones de otra Utiliza variables o parmetros cuyo tipo viene dado por la otra clase
09/01/2008
Relacin de Dependencia
Si la clase utilizada cambia, la operacin de la otra clase puede verse tambin afectada porque la clase utilizada puede presentar ahora una interfaz o un comportamiento diferente. diferente.
Relacin de Generalizacin
Un elemento general (superclase) y un caso ms especfico de ese elemento (subclase) un objeto de la subclase es un tipo de un objeto de la superclase
09/01/2008
Relacin de Generalizacin
Polimorfismo
Una implementacin de una operacin en la subclase (hijo) redefine la implementacin de la misma operacin en la superclase (padre)
Dos mtodos con la misma firma (nombre, parmetros, tipo de retorno). Uno en el retorno). padre y uno en el hijo
Polgono (padre): (padre): Cuadrado (hijo): (hijo): float calcularArea(); calcularArea(); float calcularArea(); calcularArea();
Relacin de Generalizacin
Polimorfismo
Sea un Polgono p y un Triangulo t : Todos los objetos de las subclases pueden asignarse a objetos de la superclase
Es vlido: p=t; // t es un Polgono vlido: p=t;
09/01/2008
Asociacin
Relacin estructural que especifica que los objetos de un elemento estn conectados con los objetos de otro. otro. Caractersticas
Nombre: Nombre: Describir la naturaleza de la relacin. relacin. Rol: Rol: la cara que la clase de un extremo de la asociacin presenta a la clase del otro extremo Multiplicidad: Multiplicidad: el tamao posible del conjunto de objetos relacionados
Mnimo .. Mximo
Asociacin
Rol
Nombre y orientacin
Multiplicidad
Rol
Multiplicidad
09/01/2008
Agregacin
Relacin TODO/Parte El objeto del TODO tiene objetos de la parte
TODO
Partes
Clase Abstracta
Clases que son incompletas Clases de las que no se desea que haya objetos Se les coloca el nombre en itlica Tienen la firma del mtodo pero no la implementacin Dicha implementacin se deja a los hijos Puede tener atributos Puede tener algunos mtodos implementados
09/01/2008
Clase Abstracta
Area=base*altura/2
Area=base*altura
Area=lado*lado
Diagrama de Clases
Muestra un conjunto de clases, as como sus relaciones Permite:
Modelar la vista de diseo esttico de un sistema Visualizar, especificar y documentar modelos estructurales
Incluye:
Clases Interfaces Relaciones de dependencia, generalizacin y asociaciones
09/01/2008
10