Your SlideShare is downloading. ×
Clase4 poo-uml
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Clase4 poo-uml

264
views

Published on

Clase4 poo-uml

Clase4 poo-uml

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
264
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Ó UML por sus siglás en inglés (Unified Modeling Language) Lenguaje Unificado de Modelado (LUM) Universidad Centroccidental “Lisandro Alvarado” Decanato de Ciencias y Tecnología Análisis de Sistemas Departamento de Sistemas Programación Coordinación del Área de Programación Lapso 2013-1
  • 2. Contenido Programático UNIDAD II. Segunda Parte Objetivo General Aplicar los conceptos básicos de la POO, la técnica de modelado orientado a objetos y la representación de las clases en un lenguaje de programación. Objetivos Específicos • Aplicar una técnica de modelado del mundo real mediante objetos, para la resolución de problemas, siguiendo una notación UML. • Identificar los componentes básicos de un diagrama de clases. • Emplear para un lenguaje de programación la representación de las clases diagramadas en UML.
  • 3. Contenido Programático ¿Qué es UML? Diagramas UML Diagrama del Clases Elementos de Diagrama de Clases Relaciones entre Clases
  • 4. ¿Qué es UML? UML Especificar Construir Visualizar Documentar Un Lenguaje de Modelado Unificado basado en una notación gráfica, que nos permite: Unificación de los métodos de modelado orientados a objetos de Booch, Rumbaugh (OMT: Object Modeling Technique) y Jacobson (OOSE: Object- Oriented Sotfware Engineering) .
  • 5. Diagramas UML Modelado de Requisitos • Caso de Uso Modelado de Dinámica • Secuencia • Colaboración Modelado de Objetos • Objetos • Clases Modelado de Ciclo de Vida • Estado Modelado de Actividades • Actividades Modelado de la Arquitectura • Componente • Despliegue
  • 6. Diagrama de Clases Es un tipo de diagrama estático que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos. Fecha - dia : int - mes : int - anno : int + Fecha() + Fecha(d:int, m:int, a:int) + SetDia(d:int): void + SetMes(m:int) : void + SetAnno(a:int) : void + GetDia():int + GetMes():int + GetAnno():int Atributos Métodos Nombre Privado (-) Público (+) Protegido (#) Representación de una Clase en UML
  • 7. Elementos de un Diagrama de Clases • Representa una propiedad de una entidad. Cada atributo de un objeto tiene un valor que pertenece a un dominio de valores determinado. • Las sintaxis de una atributo es: Visibilidad <nombre>: tipo = valor inicial Atributos • El conjunto de operaciones que describen el comportamiento de los objetos de una clase. • La sintaxis de una operación en UML es: visibilidad <nombre> (lista de parámetros) : tipo de retorno Métodos
  • 8. Relaciones entre Clases Existen tipos de relaciones entre clases entre ellas: Dependencia Agregación Generalización Composición
  • 9. Relaciones entre Clases Relación de Dependencia ó Uso • Una relación de uso sucede cuando la clase utilizada envía mensajes a la clase utilizadora, pero la clase utilizada no se almacena en una de las variables de la instancias de la clase utilizadora. • Por su parte, la clase utilizada se pasa a la clase utilizadora por alguna tercera parte, como un argumento (parámetro) de uno de los métodos de la clase utilizadora. • Cuando una clase necesita hacer uso de otra clase pero no necesita incorporar esa clase en su propia estructura. Clase Utilizadora Clase Utilizada
  • 10. Relaciones entre Clases (Relación de Uso-UML) • La Asociación de Beisbol Juvenil requiere un programa que lleve el registro de sus jóvenes. Por cada Joven se conoce su edad y nacionalidad. Se desea Mostrar por cada Joven: si es admitido o no (es admitido siempre y cuando sea venezolano y su edad esté entre 18 y 21 años). Por la Asociación: mostrar el porcentaje de jóvenes admitidos. El método ProcesarJoven recibe como parámetro un objeto de la clase Joven, con el propósito de solicitarle la información que necesita para realizar sus operaciones, como son: contar jóvenes y contar jóvenes admitidos.
  • 11. Principal.cpp Asociacion.cpp Relaciones entre Clases (Relación de Uso - C++)
  • 12. Relaciones entre Clases Relación de Agregación • Implica en su significado que una clase Todo “contiene” “tiene”o “posee” otra(s) clase(s) independiente(s), llamada(s) Parte(s). • Es una relación que no exige dependencia existencial y se denota por un rombo o diamante sin rellenar del lado de la clase Todo. • Los objetos se consideran prácticamente como independientes y aún así están ligados. • El tiempo de vida de cada uno de los objetos es independiente. La clase Todo contiene a la clase Parte
  • 13. Relaciones entre Clases (Relación de Agregación - UML) • Se conoce de cada uno de los estudiantes de una sección su cedula y nota final. Se desea conocer para dicha sección el porcentaje de aprobados, el porcentaje de aplazados y promedio de notas. El método ProcesarEstudiante crea un objeto de la clase Estudiante, con el propósito de solicitarle la información que necesita para realizar sus operaciones, como son: acumular nota, contar aprobados y contar aplazados
  • 14. Relaciones entre Clases (Relación de Agregación – C++) Seccion.cpp Principal.cpp
  • 15. Relaciones entre Clases Relación de Generalización • Son relaciones que implican en su significado que una clase “es un tipo de” otra clase. • La relación de generalización denota una relación de herencia entre clases. • La subclase hereda todos los atributos y métodos descritos en la superclase y puede tener sus propios atributos y métodos. • Se representa dibujando un triángulo sin rellenar en el lado de la superclase. La clase CuentaAhorro es un tipo de la clase CuentaBancaria.
  • 16. Relaciones entre Clases Relación de Composición • Son relaciones que implican en su significado que una clase “está compuesta por” otras clases dependientes. • Cuando deja de existir la clase compuesta, deja de existir el resto de las clases de la composición. • Se denota dibujando un rombo o diamante relleno del lado de la clase que contiene a la otra en la relación (clase Todo). • Al implementar una relación de composición la(s) clase(s) Parte(s) son atributos de la clase Todo. La clase Todo está compuesta por la clase Parte
  • 17. Relaciones entre Clases (Relación de Composición) • Ejemplo: La Universidad está compuesta por varios decanatos, … • En esta relación, una Universidad puede tener varios Decanatos y si esta deja de existir, no tiene sentido la existencia de los Decanatos por separado.
  • 18. En un hotel se desea determinar ciertas estadísticas con respecto a los clientes que se matriculan a diario. Se conoce de cada cliente: cedula, tipo de habitación que solicita (1=Doble, 2=Triple, 3=Cuádruple), tipo de pago (‘C’=Cheque, ‘D’=Depósito) y región de procedencia (1=Andes, 2=Llanos, 3=Oriente, 4=Central).Los precios según el tipo de habitación son los siguientes: (1= Bs. 200, 2= Bs. 300, 3= Bs. 400, 4= Bs. 500). Además se conoce que si el cliente pertenece a la región de Los Llanos tiene un descuento de un 10% en el costo de la habitación. Al final del día el hotel desea conocer: a) por cliente: monto a pagar por la habitación, b) por el hotel: Tipo de pago más usado, Monto total de las ventas. La Academia Americana ofrece cursos en diversas áreas. Por cada curso se conoce nombre, área al que pertenece (1=Hogar, 2=Contabilidad, 3=Salud, 4=Informática), turno (‘D’=Diurno, ‘N’=Nocturno) y duración (1=8 horas, 2=16 horas, 3=32 horas, 4=42 horas). Los precios del curso según el área que pertenece son los siguientes: (1= Bs. 200, 2= Bs. 300, 3= Bs. 400, 4= Bs. 500). Además se conoce que si la duración del curso es de 42 horas, el precio del curso tiene un descuento del 15%. Al final del día la academia desea conocer: Porcentaje de cursos del área de informática, Monto total cancelado. Ejercicios Propuestos Elaborar el Diagrama de Clases y Programa en C++
  • 19. Referencias Bibliográficas • JOYANES, L y ZAHONERO, I. 2010. Programación en C, C++, JAVA y UML. Mc Graw Hill, Interamericana Editores, S.A. DE C.V. • JOYANES, L. 2006. Programación en C++. Algoritmos, estructuras de datos y objetos. 2a Edición. Mc Graw Hill, Interamericana de España, S.A.U.
  • 20. Repasar lo visto en Clase. Realizar Ejercicios Propuestos. Próxima Clase El éxito está en la vida que uno lleva, en cómo vive, cómo goza, cómo se integra, cómo disfruta de las pequeñas cosas. Laura Esquivel