Professional Documents
Culture Documents
Orientada a Objetos
Tecnología de la Programación I
Ing. Zoraida Vidal Melgarejo, Mg.
1
Conceptos de Orientación a Objetos
2
Conceptos de Orientación a Objetos
3
Análisis y Diseño Orientado a Objetos
4
Análisis y Diseño Orientado a Objetos
5
Análisis y Diseño Orientado a Objetos
6
Programación Orientada a Objetos
¾Objetos
9 Permiten hacer sistemas más adaptables
9 Reducen el costo del mantenimiento y la modificación
¾Resultados
9 Mejor mantenimiento
9 Retroalimentación con los usuarios
9 Entregas más rápidas a los usuarios mediante procesos iterativos e
incrementales
8
Programación Orientada a Objetos
¾Las Clases
9Existen en el análisis, el diseño y la implementación
9Se relacionan directamente con los conceptos del dominio
9Proveen un significado natural e intuitivo de las separaciones
9
Programación Orientada a Objetos
¿Cómo nos ayuda la Tecnología de Objetos?
10
Programación Orientada a Objetos
¿Cómo nos ayuda la Tecnología de Objetos?
Tecnología
Arquitecturas Telecomunicaciones.
de
Distribuidas
Objetos
Cliente/Servidor
Financiero OLTP
Comercial
11
Programación Orientada a Objetos
¿Cómo nos ayuda la Tecnología de Objetos?
Diseño
Análisis Implementación
Modelo OO
CLASES
12
Programación Orientada a Objetos
¿Cómo nos ayuda la Tecnología de Objetos?
13
Programación Orientada a Objetos
Clase Atributo
Operación
Tecnología
Objeto de Mensaje
Objetos
Asociación Herencia
¿Qué es un Objeto?
9 Definición Filosófica: una entidad que uno puede reconocer.
– Un Objeto:
• Es una copia del molde de una clase
• Es una instancia simple de alguna clase
• Retiene la estructura y el comportamiento de alguna clase
16
Programación Orientada a Objetos
Los atributos del objeto mantienen su estado actual
– Los objetos almacenan su estado actual.
– Cada pieza almacenada (variable) se conoce como atributo.
• El valor de los atributos denota el estado actual del objeto.
INK
Objeto: Atributo:
Mi lapicero azul Tinta disponible
Objeto: Atributo:
Cajero Automático BCP Dinero disponible 17
Programación Orientada a Objetos
Los objetos tienen un comportamiento
– Un objeto existe para ofrecer cierto comportamiento
(funcionalidad) al sistema.
– Cada comportamiento distinto es llamado operación
Objeto:
Operación:
Mi lapicero azul
Escribir
Objeto: Operación:
Cajero automático BCP Retirar
18
Programación Orientada a Objetos
Los objetos son modelados como Abstracciones
• Un objeto de Java es modelado como una representación abstracta
de un objeto del mundo real.
• El modelo tiene solo los atributos y operaciones que son
relevantes al contexto del problema.
Contexto: Catálogo de productos
Atributos y operaciones del mundo real que serían deseables en el modelo:
• Atributos: modelo, fabricante, precio
• Operaciones: cambiar precio
Atributos y operaciones del mundo real que no serían deseables en el modelo:
• Atributos: color de la tinta
• Operaciones: rellenar, cambiar color, punto, escribir
19
Programación Orientada a Objetos
Los objetos pueden ser compuestos
– Los objetos pueden estar compuestos de otros objetos.
– Los objetos pueden ser parte de otros objetos.
– Esta relación entre objetos se conoce como agregación.
20
Programación Orientada a Objetos
Persona
Clase Objeto
getNombre
setEdad getEdad()
nombre getEdad
Mensaje
direccion
edad
Cliente
getDireccion setDireccion o
Invocador
21
Programación Orientada a Objetos
Los objetos colaboran entre si
• Los objetos trabajan juntos para cumplir una función y forman la
base de una aplicación.
– Todos los métodos son definidos dentro de una clase.
– Todos los objetos son creados desde alguna clase y contiene
todos los atributos y métodos de la clase.
– Los objetos se asocian con otros para colaborar en una tarea
común.
– Los objetos asociados se comunican a través del envío de
mensajes (llamadas a métodos)
22
Programación Orientada a Objetos
Los objetos interactúan mediante mensajes
• El objeto invocador debe estar asociado o enlazado con el que
recibe la llamada.
• El objeto que envía el mensaje pide al receptor que realice alguna
operación que es especificada en el mensaje.
• Similar a la llamada a procedimientos o funciones:
– El que envía llama algún método del receptor.
– El receptor ejecuta la tarea especificada.
• La llamada a métodos es siempre en el contexto de algún objeto:
– miLapiz.escribe( ): Programación orientada a objetos.
– escribe (miLapiz): Programación estructurada tradicional.
23
Programación Orientada a Objetos
¿Qué es una clase?
Cuando se crea el objeto “mi lapicero azul”, no hay que especificar sus
operaciones o atributo. Simplemente se cual es la clase del objeto que se
crea.
24
Programación Orientada a Objetos
Clases vs Objetos
• Las clases son la definición estática y estándar que usamos para
comprender todos los objetos de una clase (tipo).
25
Programación Orientada a Objetos
¿Qué es el encapsulamiento?
• El encapsulamiento consiste en ocultad la estructura y las
operaciones de un objeto detrás de su interface.
• El cajero automático es un objeto que le da dinero a sus clientes:
– El cajero oculta a sus clientes las operaciones internas que
realiza.
– La interface (medio de operación del cajero) es ofrecida por las
funciones del teclado, la pantalla, y otros dispositivos.
– Si se pidiera violar el encapsulamiento del cajero se pudiera
robar al banco.
Violar el encapsulamiento en orientación a objetos es imposible.
26
Programación Orientada a Objetos
¿Qué es la Herencia?
• Puede ser la concordancia entre varias clases.
• Define las propiedades comunes en una clase superclase.
Las subclases usan la herencia para añadir atributos o métodos.
Las subclases usan la herencia para cambiar métodos.
Superclase
Clase base
Clase padre
Cuenta Subclase
Clase derivada
Clase hija
Cuenta corriente
Cuenta de ahorros
27
Programación Orientada a Objetos
Uso de la relación “es-un-tipo-de”
Lápiz
Cuenta de Ahorros
28
Programación Orientada a Objetos
¿Qué es el Polimorfismo?
• El polimorfismo se refiere a:
• Varias formas de hacer la misma operación
• La habilidad de solicitar una operación con el mismo significado
a diferentes objetos, sabiendo que cada objeto implementa la
operación a su forma.
• Los principios de la herencia y de la substitución de objetos
Cargan pasajeros 29