Fundamentos de Orientaci - PowerPoint PPT Presentation

1 / 44
About This Presentation
Title:

Fundamentos de Orientaci

Description:

Fundamentos de Orientaci n a Objetos Referencias Meyer, Bertran., Construcci n de Software Orientado a Objetos , Prentice Hall, 1997. Booch, Grady., Analisis ... – PowerPoint PPT presentation

Number of Views:72
Avg rating:3.0/5.0
Slides: 45
Provided by: angelfire97
Category:

less

Transcript and Presenter's Notes

Title: Fundamentos de Orientaci


1
Fundamentos de Orientación a Objetos
2
Referencias
  • Meyer, Bertran., Construcción de Software
    Orientado a Objetos, Prentice Hall, 1997.
  • Booch, Grady.,Analisis y Diseño orientado a
    Objetos con aplicaciones.
  • Fowler, Martin., UML Distille Applying the
    Standard Object Modeling Language,
    Addison-Wesley, 1997
  • Budd, Timothy A. An Introduction to Object
    Oriented Programming (3rd Ed), Addison-Wesley,
    2002.
  • Peña, Ricardo.,Diseño de Programas, formalismo y
    abstracciones, Prentice Hall, 1998

3
Referencias ( cont...)
  • Larman, G., Applying UML and Patterns An
    Introduction to Object-Oriented Analysis and
    Design, prentice-Hall, 1998.
  • Booch, Grady., El Lenguaje Unificado de Modelado
    UML, Addison-Wesley, 1998
  • Aguilar, Joyanes., Programación Orientada a
    Objetos, Mc. Graw Hill
  • Rumbaugh, James., Modelaje y Diseño Orientado a
    Objetos, Prentice Hall, 1990

4
Agenda
  • Introducción a la Programación Orientada por
    Objetos
  • Conceptos básicos
  • Abstracción
  • Herencia
  • Relaciones entre clases
  • Polimorfismo

5
Introducción
6
Introducción
Booch (1991...)
RUP (1999...)
OBA,MOSES, FUSION (1994...)
Objectory (1992...)
OMT (1991...)
7
Conceptos básicos
  • OO provee objetos como el principal medio para
    abstraer y estructurar un sistema.
  • Un objeto puede modelar entidades del mundo real,
    puede capturar abstracciones de fenómenos
    complejos, puede representar artefactos de
    software (pilas, gráficos, ).

8
Conceptos básicos
  • El contexto del problema se ve como objetos que
    interactúan entre ellos

9
Conceptos básicos
  • Ejemplo Enviar Flores 4
  • Suponga que Juan desea llevarle flores a una
    amiga en otra ciudad María
  • Como Juan no puede llevarlas personalmente, le
    encarga a su florista preferida (Rosa) el envío
  • María recibe sus flores

10
Conceptos básicos
CB4
  • Ejemplo Enviar Flores 4
  • Juan le solicita a Rosa un servicio
  • Rosa sabe cómo prestarle el servicio a Juan
  • Juan sabe que Rosa presta el servicio que el
    necesita
  • Rosa es responsable de prestarle el servicio
    adecuadamente a Juan
  • Juan desconoce qué le implica a Rosa prestarle el
    servicio

11
Conceptos básicos
  • Ejemplo Enviar Flores 4

María
Mensajero
Productor
Arreglista
Recolector
Juan
Rosa
Florista Local
12
Conceptos básicos
  • En programación orientada por objetos un
    programa es una comunidad de agentes (objetos)
    que interactuan entre ellos.
  • Cada objeto tiene un rol en la solución del
    problema
  • Cada objeto provee un conjunto de servicios (o
    métodos)
  • Los servicios de un objeto son usados por otros
    objetos.

13
Conceptos básicos
  • La forma en que los objetos se comunican entre
    ellos es a través de mensajes
  • Un mensaje encapsula la petición de un servicio
  • El receptor del mensaje presta el servicio y
    devuelve una respuesta al que solicitó el servicio

14
Conceptos básicos
15
Conceptos básicos
16
Conceptos básicos
17
Conceptos básicos
18
Conceptos básicos
  • Modelar consiste en identificar (abstraer) qué
    objetos hay en el mundo del problema, cómo son,
    cómo se comportan y cómo se relacionan.

19
Conceptos básicos
  • Objeto
  • Es una abstracción de un elemento (concepto) del
    Contexto del Problema
  • Ejemplos
  • Estudiante
  • Fecha
  • Automóvil
  • Libro
  • Vuelo

20
Conceptos básicos
  • El comportamiento de los objetos puede ser
    descrito por una caracterización abstracta de su
    interfaz. Por ejemplo

21
Conceptos básicos
  • La caracterización del comportamiento es
    suficiente para diseñar el sistema. El
    comportamiento real del objeto puede ser
    implementado y refinado más tarde de acuerdo con
    las necesidades.

22
Conceptos básicos
  • Un objeto empaqueta datos (una representación
    concreta) y procedimientos que operan sobre los
    datos.

23
Conceptos básicos
Nombre
Datos/Atributos/Campos
Métodos/Servicios/Interfaz
24
Conceptos básicos
  • El envío de mensajes es la única forma para que
    un objeto realice una operación.
  • Las operaciones son la única forma para cambiar
    el estado de los datos.
  • Cuando esto se cumple, se dice que el estado
    interno del objeto (el valor de sus datos) está
    encapsulado éste no puede ser manipulado
    directamente desde el exterior y su
    representación concreta es invisible.

25
Conceptos básicos
  • Abstracción
  • Mecanismo de la mente humana fundamental para la
    comprensión de fenómenos o situaciones que
    involucren una gran cantidad de detalles.
  • En biología los seres vivos se clasifican en
    especies, géneros, clases, órdenes, etc...

26
Conceptos básicos
  • Abstracción ( cont...)
  • Proceso mental que tiene dos aspectos
    complementarios
  • El aspecto de destacar los detalles relevantes
    del objeto de estudio
  • El aspecto de ignorar los detalles irrelevantes
    del objeto.

27
Conceptos básicos
  • Tipo Abstracto de Datos (TAD)
  • Un tipo abstracto de datos es una colección de
    valores y de operaciones que se definen mediante
    una especificación que es independiente de
    cualquier representacion

28
Conceptos básicos
  • Abstracción y encapsulamiento
  • La abstracción se centra en el comportamiento
    observable de un objeto, el encapsulamiento se
    centra en la implementación que da lugar a ese
    comportamiento.
  • encapsulamiento es el proceso de almacenar en un
    mismo lugar los elementos de una abstracción que
    constituyen su estructura y su comportamiento
    sirve para separar la interfaz contractual de una
    abstracción de su implantación." Booch96

29
Conceptos básicos
  • Clase
  • Describe un conjunto de objetos del Contexto del
    Problema, que tienen las mismas características y
    el mismo comportamiento

30
Conceptos básicos
  • La noción de Clase viene de clasificación
    agrupar (en un conjunto) objetos (elementos) que
    se comportan de la misma manera (con respecto a
    la interfaz que describe el comportamiento).

31
Conceptos básicos
  • Metáfora

32
Conceptos básicos
  • Agregación/Composición
  • Permite abstraer relaciones de tipo ...tiene... y
    ... está compuesto de...

33
Conceptos básicos
  • Asociaciones
  • Permite abstraer relaciones entre objetos
    diferentes a la composición

34
Herencia
  • Los objetos se organizan en jerarquías

35
Herencia
  • La herencia permite modelar relaciones del tipo
    ...es... y clasificaciones
  • Un mamífero es un vertebrado
  • Un monitor es un estudiante

36
Herencia
  • Relación de subtipaje (herencia)
  • si B es subtipo de A entonces cualquier objeto de
    tipo B puede ser usado en cualquier parte donde
    un objeto de tipo A puede ser usado.

37
Herencia
  • Herencia Múltiple

EstudiantePregrado
MonitorPregrado
38
Herencia
39
Herencia
40
Herencia
  • La regla de oro de la herencia ..es un...
  • Cuando tenga
  • Forme la frase A es un B''. Si es correcto,
    entonces A puede ser subclase de B

41
Polimorfismo
  • Es la posibilidad de definir de forma distinta un
    método,dependiendo del objeto.

MiCuadrado.pintar()
MiCirculo.pintar()
MiTriangulo.pintar()
42
Polimorfismo
for (int i 1 arreglo.length() i)
arregloi.pintar()
43
Polimorfismo
  • El polimorfismo es posible gracias a la herencia

44
Resumen Principios
  • Todo es un objeto
  • Los objetos realizan operaciones (computan)
    solicitando servicios entre ellos a través del
    paso de mensajes
  • Todo objeto tiene su propia memoria, la cual
    consiste de otros objetos
  • Todo objeto es una instancia de una clase. Una
    clase agrupa objetos similares.
  • En la clase se describe el comportamiento de los
    objetos.
  • Las clases están organizadas en una jerarquía
    con una única raíz, llamada la jerarquía de
    herencia.
Write a Comment
User Comments (0)
About PowerShow.com