Logo Studenta

programacion orientada a objetos clase 1

¡Este material tiene más páginas!

Vista previa del material en texto

UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Programación Orientada a Objetos
Diseño e implementación de clases en UML
Paradigmas y Lenguajes
Dpto Informática, FCE, Universidad Nacional de Salta
Ismael Orozco
{ciorozco.unsa@gmail.com}
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Outline
1 UML: Lenguaje Unificado de Modelado
2 Diagrama de clases
3 Ejercicio
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
UML
I Definición: UML es un lenguaje de propósito general que
ayuda a especificar, visualizar y documentar modelos de
sistemas software, incluido su estructura y diseño, de tal
forma que se unifiquen todos sus requerimietos.
I Objetivo: Estandarizar el modelado de sistema software.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Elementos UML
I Elementos estructurales
Partes estáticas del modelo.
Representan elementos conceptuales, f́ısicos o materiales.
Clases, objetos, interfaces, casos de uso, actor, etc.
I Elementos de comportamiento
Describen el funcionamiento de un sistema.
Interacciones, máquinas de estado.
I Elementos de agrupación
Permiten agrupar otros elementos del modelo.
Componentes, paquetes, nodos.
I Elementos de anotación
Sirven para realizar anotaciones extra.
Notas.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Diagramas UML
I Diagramas estructurales
Diagrama de casos de uso
Diagrama de clases
Diagrama de objetos
I Diagramas de comportamiento
Diagrama de estados
Diagrama de actividad
I Diagramas de interacción
Diagrama de secuencia
Diagrama de colaboración
I Diagramas de implementación
Diagrama de componentes
Diagrama de despliegue/distribución
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Elementos estructurales: Clases
I Una clase es una definición de un modelo abstracto de datos,
que incluye todos los atributos y métodos del elemento a
modelar.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Elementos de anotación
I Nota: Sirve para anotar comentarios en los modelos con la
finalidad de describir, clarificar y hacer observaciones
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Outline
1 UML: Lenguaje Unificado de Modelado
2 Diagrama de clases
Encapsulamiento
Herencia
Polimorfismo
Asociación
3 Ejercicio
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Diagrama de clases
I Describe la definición de cada uno de los posibles objetos
pertenecientes al sistema.
I Muestra las clases del sistema, sus atributos, métodos, y las
relaciones entre los objetos.
I Diagrama cercano a la implementación. Construido y refinado
a través del desarrollo.
I Desarrollado por analistas, diseñadores y desarrolladores.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Encapsulamiento
Encapsulamiento
I ¿Qué es el encapsulamiento?
I Ocultamiento de datos de un objeto de tal forma que solo sean
accesibles mediante los métodos definidos por el propio objeto.
I Ventajas:
Se protegen los datos privados del objeto de lecturas y
escrituras no permitidas.
Permite una mejor estructuración y manipulación de los datos.
I En UML, los niveles de encapsulamiento vienen heredados de
C++
- Privado: Atributo o proceso totalmente invisible.
# Protegido: Visibles para las clases amigas o para clases
derivadas de la original.
+ Publico: Visibles a otras clases.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Herencia
Herencia
I Las subclases heredan propiedades de sus clases padre, esto
es, los atributos, métodos y asociaciones de la clase padre
están disponibles en sus clases hijos.
I La herencia se expresa mediante una flecha hueca.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Polimorfismo
Polimorfismo
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Asociación
Asociación
I Las asociación expresa una conexión entre clases, esto es, que
existe algún tipo de relación entre ambos.
I Se representa mediante una ĺınea que une ambas clases. Se
puede indicar el tipo de asociación y el sentido de la misma
(navegavilidad).
I Se indica la multiplicidad de cada clase, que representa con
cuantos objetos de la clase unida por la asociación se pueden
relacionar un objeto determinado.
1
0..1
∗
1..∗
I La multiplicidad ≥ 1 establece una restricción de existencia.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Asociación
Asociación especial: Agregación
I Una clase puede estar relacionada por un conjunto de clases
que la representan y, sin las cuales, no tenga sentido.
I A esta relación se la llama Agregación o Composición débil y
se representa mediante un rombo blanco.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Asociación
Ejemplo de agregación
I Una computadora posee, como ḿınimo los siguientes
elementos:
1 CPU
1 Teclado
1 Monitor
1 Mouse
I Un CPU se compone por:
1 o varias unidades de disco rigido
Varios módulos de memoria RAM
1 tarjeta gráfica
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Asociación
Diagrama de clase: Ejemplo agregación
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Asociación
Asociación especial: Composición
I La Composición o Composición fuerte es una relación entre
clases similar a la agregación, pero en la que las clases que
componen a la principal no tiene sentido sin dicha clase
principal.
I Se representa mediante un rectángulo de color negro.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Outline
1 UML: Lenguaje Unificado de Modelado
2 Diagrama de clases
3 Ejercicio
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Ejercicios
Para el siguiente caso de estudio:
1 Modele el problema utilizando Diagrama de clases.
2 Implemente en Java el modelo propuesto.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Caso de Estudio 1: Gimnasio
Se desea realizar una aplicación para gestionar los socios y cursos
de un gimnasio.
I Para cada socio del gimnasio se almacena su nombre y DNI.
Existen tres tipos de socios: Jubilado, Normal e Infante. La
cuota mensual básica es de $800, $1000 y $500
respectivamente. Pagando esta cuota se tiene derecho a
disfrutar de las instalaciones del gimnasio y piscina.
I Además, el gimnasio ofrece una amplia oferta de cursos a los
que los socios se pueden inscribir. Todo curso tiene un código,
nombre, una descripción, un cupo máximo permitido de
alumnos y un precio mensual.
I La cuota mensual que debe abonar un socio se calcula del
siguiente modo:
Suma de la cuota mensual básica más el precio de todos los
cursos en el que se encuentra inscripto el socio.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Caso de Estudio 1: Gimnasio
A los jubilados se les aplica un descuento del 20% sobre la
cuota mensual total.
Los socios infantiles pueden estar asociados a un socio adulto
(Siempre que éste socio sea un socio normal), en cuyo caso, se
le aplica un 15% de descuento sobre la cuota total.
UML: Lenguaje Unificado de Modelado Diagrama de clases Ejercicio
Bibliograf́ıa
M. Fowler & K. Scott (1999). UML Gota a Gota. 5th ed.
ISBN: 968-444–364- 1.
	UML: Lenguaje Unificado de Modelado
	Diagrama de clases
	Encapsulamiento
	Herencia
	Polimorfismo
	Asociación
	Ejercicio

Continuar navegando