Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Poo PDF
Poo PDF
Tulio Mamani
Ing. Tulio Mamani
Orientado a Objetos
«Es una paradigma del mundo de ingeniería de software»
3
Objetos
Un objeto se define como «Representación de cualquier cosa del
mundo real, al que se puede asociar estados (state) y
comportamientos (behavior)»
4
Objetos
5
Objetos
• Nombre
• Color
Estados
• Raza
• Sed
• Ladrar
Compor- • Buscar
tamiento • Olfatear
• Menear la cola
6
Objetos
• Marcha actual
• Velocidad actual
Estados
• Cadena de pedaleo
actual
• Cambiar marcha
Compor-
• Cambiar velocidad
tamiento
• Cambiar cadena
7
Objetos
Objetivo
8
Objetos
• Encendido
• Apagado
Estados • Volumen actual
• Frecuencia actual
• Estación actual
• Encender
• Apagar
• Incrementar
volumen
Compor-
• Decrementar
tamiento volumen
• Cambiar estación
• Sintonizar estación
• Guardar memoria
9
Objetos en IT
10
Objetos en IT
11
Clases
Radio
Encendido
Apagado
Volumen actual
Frecuencia actual
Estación actual
Marca
Modelo
encender();
apagar();
incrementarVolumen(cantidad);
decrementarVolumen(cantidad);
cambiarEstacion(estacion);
sintonizarEstacion(tipo);
12
Clases y Objetos
• Encendido = Si
• Apagado = No
• Volumen actual = Alto
radioSony • Frecuencia actual = FM
• Estación actual = 97.7
• Marca = Sony
• Modelo = Genezi
• Encendido = No
• Apagado = Si
Radio • Volumen actual =
Ninguno
radioLG • Frecuencia actual = FM
• Estación actual =
Ninguno
• Marca = LG
• Modelo = CM4520
13
Ejercicios
¿Cuáles de los siguientes ítems son clases u objetos?
14
Ejercicios
¿Cuáles de los siguientes nombres de clases no están correctos?
(Compañía de venta de pasajes de trenes)
15
Ejercicios
Identificar las posibles clases que participan en:
• Un sistema de monitoreo de salidas y rutas de líneas de transporte
publico .
• Un sistema de control de semáforos inteligente para el servicio de
transito.
• Un sistema de seguridad de casas en una urbanización.
• Un proyecto de control de personal en la universidad.
• Un sistema remoto de medición de consumo de luz y agua.
16
Ejercicios
Identificar los atributos de las siguientes clases:
17
Abstraccion
Se refiere a analizar y representar los atributos y funcionalidades
de un objeto del mundo real que son necesarios para dar solución
a un problema en particular.
18
Ing. Tulio Mamani
Relaciones
Es un tipo de….
Vehículo
Tipos de relaciones:
Generalización
Asociación
Agregación
Composición
20
Generalización
Medio de
Herencia
Motorizado No
Especialización
Súper clase, Clase base, Padre
Generalización
Motorizado
Herencia
Automóvil Motocicleta
Herencia
Camioneta Van
21
Ejemplo
Vehiculo
Camioneta Camion
22
Asociación
Software SO
Software
SO
1
1
23
Agregacion
Agregación
La agregación es un tipo de asociación que indica que una clase es
parte de otra clase (composición débil). Los componentes pueden ser
compartidos por varios compuestos (de la misma asociación de
agregación o de varias asociaciones de agregación distintas). La
destrucción del compuesto no conlleva la destrucción de los
componentes. Habitualmente se da con mayor frecuencia que la
composición.
*
Asientos
1
Vehiculo
1
RadioFM
*
1..1
RadioFM2
24
*
Composición
Composición
Composición es una forma fuerte de composición donde la vida de la
clase contenida debe coincidir con la vida de la clase contenedor. Los
componentes constituyen una parte del objeto compuesto. De esta
forma, los componentes no pueden ser compartidos por varios
objetos compuestos. La supresión del objeto compuesto conlleva la
supresión de los componentes.
El símbolo de composición es un diamante de color negro colocado
en el extremo en el que está la clase que representa el “todo”
(Compuesto)
Motor Vehiculo
0..*
0..1
0..1
Rueda
0..*
25
Diferencias entre agregación y
composición
26
Ejercicios
27
Ing. Tulio Mamani
Encapsulación
«Forma de ocultar atributos y/o métodos de las clases al público»
29
Polimorfismo
«Métodos/Operaciones pueden tomar diferentes formas basadas en
la clase»
30
Ing. Tulio Mamani
Que es un modelo?
Es una simplificación de la realidad
Conjunto de herramientas,
procedimientos, técnicas y un
soporte documental para
desarrollar nuevo SW
Construcción de la casita de Boby
Modelo Simple
Proceso Simple
Herramientas Simples
Construcción de un chalet
Requiere Modelado
Proceso Definido
Herramientas Sofisticadas
Construcción de un edfificio
Requiere Modelado
Avanzado
Proceso Definido en base
a proyectos
Herramientas muy
Sofisticadas
El Lenguaje de modelado unificado
Construir
Es un: Lenguaje de
propósito general Documentar
Para:
Visualizar
Muestra el comportamiento
dinámico, procesos,
comunicación, coordinación y
preferencia
Clasificacion de vistas en UML
Clases
Objetos
Vistas Estructurales
Componentes
Despliegue
Las vistas se
clasifican en: Vistas de Casos de Uso
comportamiento Paquetes
Secuencia
Estados
Colaboración
Diagramas en UML
Al igual que en un plano de construcción las vistas tienen el objetivo de
brindar diferentes perspectivas del modelo para los diferentes
interesados en el modelo
Diagramas en UML
Diagrama de Diagrama de
Casos de uso Clases
Diagrama de Diagrama de
Secuencias Objetos
MODELO
Diagrama de Diagrama de
Colaboración Componentes
Diagrama de
Distribución
Diagrama de
Estados
Diagrama de
actividades
Ing. Tulio Mamani
Diagramas en UML
Casos de Uso
Caso de Uso
Permite capturar información de como un
sistema o negocio trabaja o como se
desea que trabaje
Actor
Es el rol o papel que juega un usuario o cliente
con el sistema o modelo. (No representa a una
persona en particular sino la labor que realiza
frente al modelo
Caso de Uso
Operación o tarea especifica que se realiza tras
una orden de algún agente externo (puede ser
originada por una petición de un actor o bien
desde la invocación de otro caso de uso)
Relaciones
Son:
• Inclusión.
• Extensión.
• Generalización
• Agrupamiento
Ejemplo
Cliente
Diagrama de Objetos
Diagrma 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 definiciones para atributos y
operaciones.
El modelo de casos de uso aporta información para establecer las
clases, objetos, atributos y operaciones.
Los diagramas de clases son utilizados para ilustrar las relaciones
entre clases y son el fundamento para el proceso de diseño
Diagrama de Clases
Análisis
Diseño
Programación
Prueba
Operación
Diagramas de diseño usados
Casos de Uso
Actividades
Secuencia
Clases
Estados
Ejercicio