Objetivo general del curso:
Diseñar e implementar objetos de programación que
permitan resolver situaciones reales y de ingeniería.
POO
L.I. ANGELITA VENTURA SÁNCHEZ
Introducción al paradigma de la programación
orientado a objetos.
Objetivo de la unidad:
Comprender, describir y modelar los conceptos
principales del paradigma de programación orientado a
objetos y aplicarlos a situaciones de la vida real.
ITSTB
Programación orientada a objetos
…Objetos
Grady Booch nos da la siguiente definición:
Es un método de implementación en el que los
programas se organizan en colecciones cooperativas
de objetos, cada uno de los cuales representa una
instancia de alguna clase, y cuyas clases son, todas
ellas, miembros de una jerarquía de clases unidas
mediante relaciones de herencia.
1.1 Elementos del modelo de objetos:
 Clases
 Objetos
 Abstracción
 Modularidad
 Encapsulamiento
 Herencia
 Polimorfismo.
Objetos:
 Un objeto del mundo real es cualquier cosa que vemos a
nuestro alrededor.
 Un Objeto representa una entidad del mundo real o
inventada, concreta o conceptual.
…Objetos
Podemos distinguir cada objeto con base a sus características
y comportamientos.
Por ejemplo, en el aula observamos los objetos:
alumno
profesor
mesa
silla
mesabanco
pizarrón
…Objetos
Interacción entre objetos.
Los objetos no sólo tienen atributos relacionados con su forma física
sino que, además, exhiben comportamientos específicos de su clase.
Por ejemplo:
alumno: estudia, aprende.
profesor: enseña, evalúa.
mesa: ordenada, desordenada.
silla: ocupada, desocupada.
mesabanco: ocupado, desocupado.
pizarrón: pintado, borrado.
…Objetos
EJEMPLO:
En el aula hay varios objetos alumno, al que denominaremos como la clase
Alumno.
Cada materia es impartida por un profesor; el conjunto de profesores
forman la clase Profesor.
Pizarrón, la mesa, la silla, al conjunto de materiales la podemos denominar
Clase materiales.
Los objetos externos al aula también pueden considerarse como elementos
de diversos conjuntos, de acuerdo a sus características esenciales. Así,
detectamos las clases: Celular, Árbol, Piedra, Laboratorio, Auto, Camión,
Libro, etc.
Estructura y función del objeto:
 Identidad: ¿Quien soy? = Atributos
 Propósito: ¿Cual es mi misión? = Justificación
 Responsabilidades: ¿Qué debo hacer? = Métodos
 Procedencia: ¿De qué Clase provengo? = Origen
 Relaciones: ¿Qué mensajes entiendo? = Comportamiento
Todo objeto del mundo real tiene 2 componentes:
características y comportamiento.
Automóvil
marca: String
modelo:
String
Color: String
Llenar():void
Acelerar():void
Retroceder():void
comportamiento
El estado de un objeto y su comportamiento están relacionados, por
ejemplo:
No es posible aterrizar un avión sino está volando. Está volando como
consecuencia de haber despegado del suelo.
Los mensajes navegan por los enlaces.
El estado en el que se encuentra un objeto determina su
comportamiento.
“El comportamiento de un objeto es cómo actúa y reacciona un
objeto, en función de sus cambios de estado y paso de mensajes”
[Booch]
Clases
 Una clase es una plantilla genérica para un conjunto de
objetos de similares características.
 Es un conjunto de objetos que comparten una estructura
común y un comportamiento común
…Clase
Desde una perspectiva conceptual, una Clase representa un
conjunto de Objetos que comparten:
1.Las mismas propiedades, caracteristicas (Atributos)
2.El mismo comportamiento (Métodos)
3.Las mismas relaciones con otros Objetos (Mensajes)
Los objetos que se han creado a partir de una Clase concreta,
se llaman instancias de esta Clase y se diferencian entre ellos
únicamente por los valores de sus atributos (variables).
Abstracción:
Consiste en captar las características esenciales de un objeto, así
como su comportamiento.
 En el modelo de objetos, las características esenciales de los
objetos estarán determinadas por el tipo de problema que se
vaya a resolver con ellos.
 Así, las características de un objeto que deberán tomarse en
cuenta para la solución de un problema no necesariamente
serán las mismas a considerar para la solución de otro problema
con el mismo objeto.
Es decir, se crean modelos diferentes del objeto para
resolver cada problema.
Ejemplo 1:
La Dirección de Tránsito necesita un sistema para cobro de
placas y tenencia, y control vehicular.
En este caso, el objeto a modelar es el VEHÍCULO.
Hablaremos de la clase vehículo para considerar todos los
vehículos posibles y no uno de ellos en particular. Las
características esenciales a considerar de la clase Vehículo
son:
Origen (nacional, extranjero)
Marca
Modelo
Color
Tipo de vehículo ( automóvil, camión de carga, pasajeros, camioneta, etc.)
Tipo de Combustible (gasolina, diesel, etc.)
Uso (particular, público)
Nombre del propietario, Dirección del propietario
Ejemplo 2:
La gerencia del taller mecánico "Servicio de Excelencia" necesita un
sistema para controlar los vehículos que ingresan a sus instalaciones. El
taller se especializa en automóviles que utilizan gasolina como
combustible.
En este caso, las características esenciales de la clase Vehículo son :
Respuesta
Marca
Modelo
Color
Falla detectada
Nombre del propietario
Dirección del propietario
Teléfono del propietario
TAREA: 5 EJEMPLOS DE CLASES CON
SUS ATRIBUTOS Y COMPORTAMIENTOS
Música Popular Mexicana . Canción Norteña, Canción Ranchera, Corrido
Cumbia, Son, mambo, Danzón, Música Banda,
marimba
clases hija
heredan todas las propiedades
Las clases hijas pueden adicionar,
cambiar u ocultar los miembros
públicos de la clase padre usando
las reglas de la herencia
clase padre
Clase padre Música de México
Atributos: Tipo de ritmo, tipo de instrumentos, músicos.
Métodos: bailada, cantada, tocada
Clase hija Ranchera (hereda las propiedades de la clase padre)
Atributos:
Tipo de ritmo, tipo de instrumentos, músicos.
Métodos:
bailada, cantada.
El nuevo método incluye el tocar un instrumento
tocada
Clase hija Danzon (hereda las propiedades de las clase padre)
Atributos
Tipo de ritmo, tipo de instrumentos, músicos.
Métodos:
Bailada, cantada, tocada.
Encapsulamiento
El encapsulamiento es el proceso de almacenar en un mismo comportamiento
los elementos de una abstracción que constituyen su estructura y su
comportamiento; sirve para separar la interfaz contractual de una abstracción
y su implementación.
Encapsulamiento
Encapsulamiento: Es cuando un objeto trae consigo su funcionalidad
esta última se oculta. Los objetos encapsulan lo que hacen; es decir
ocultan la funcionalidad interna de sus operaciones.
Indica la capacidad que tienen los objetos de construir una cápsula a su
alrededor, ocultando la información que contienen (aquélla que es
necesaria para su funcionamiento interno, pero innecesaria para los
demás objetos) a las otras clases que componen la aplicación
Podemos imaginarla encapsulación como introducir el objeto dentro de
una caja negra donde existen dos ranuras denominadas entrada y
salida. Si introducimos datos por la entrada automáticamente obtendrá
un resultado en la salida. No necesita conocer ningún detalle del
funcionamiento interno de la caja.
…Encapsulamiento
Los nombres de grupos de objetos del mundo real son una especie
de código inventado por los humanos para representar a grupos de
objetos a través de parejas nombre: definición.
Tomemos como ejemplo el objeto denominado mesa.
Con base a las características más relevantes para el usuario, la
definición de mesa es:
"Mueble construido con material sólido, que consiste de cuatro patas
y una placa horizontal, y que sirve para colocarle objetos encima”.
Esta definición sirve para cualquier objeto de la clase Mesa. Sin ella,
tardaríamos demasiado tiempo en comunicar nuestra idea acerca del
objeto.
…Encapsulamiento
Así, sería más complicado decir:
"Pon esto sobre el mueble construido con material sólido, que
consiste de cuatro patas y una placa horizontal, y que sirve para
colocarle objetos encima"
que:
"Pon esto sobre la mesa"
Esta última forma obliga a que los indivíduos que se comunican
conozcan el nombre y la definición del objeto; en términos de
orientación a objetos, que conozcan sus características y su
funcionamiento.
De esta manera, los humanos hemos acumulado y organizado
nuestro conocimiento acerca de los objetos que nos rodean,
impulsados por nuestra necesidad de interactuar con ellos.
Ejemplo 1
De un televisor, el usuario conoce su apariencia y parte de su
funcionamiento. Sólo le importa que funcionen el selector de canales,
el vídeo y el audio; no le interesa saber cómo funciona cada una de
las partes internas del aparato, esos detalles sólo les interesan al
fabricante y al técnico de servicio.
Abstracción
Abstracción
La abstracción es una de las principales herramientas con que combatimos
la complejidad.
Una abstracción denota las características esenciales de un objeto y
proporciona límites conceptuales definidos respecto a la perspectiva del
observador.
.. Abstracción
Abstracción
Ejemplo:
Para el Taller de Mantenimiento, el objeto mesabanco consiste en un mueble
compuesto por un armazón, un asiento, un respaldo y una paleta. De estos
elementos es importante conocer sus dimensiones, el material de que están
hechos y su color.
Así, los atributos de la clase MesaBanco serían:
Para la Oficina de Control de Inventario, el mismo objeto mesabanco se
modela tomando en consideración: clave del mueble, descripción del
mueble, departamento al que está asignado, nombre de la persona que lo
tiene a su resguardo, y costo del mueble.
En este caso, la clase MesaBanco tendría los siguientes atributos :
.. Abstracción
Abstracción
Comportamientos
Los objetos no solamente poseen atributos, sino que también exhiben
comportamientos que manifiestan al interactuar con otros objetos en un
esquema cliente/servidor, donde un cliente es cualquier objeto que utiliza
los recursos de otro objeto denominado servidor.
El modelo de objetos maneja en un sólo paquete los atributos y
comportamientos de los objetos, por medio de un principio denominado
encapsulamiento.
Modularidad
La modularidad es la descomposición de un sistema en un conjunto de
módulos cohesivos y débilmente acoplados.
Jerarquía
La jerarquía es una clasificación u ordenación de abstracciones.
La estructura de clases se representa por medio de una jerarquía que
muestra la relación de herencia es un.
Herencia
La herencia define la relación entre clases es un, donde una subclase
hereda de una o más superclases.
Polimorfismo
La palabra polimorfismo tiene como origen las palabras griegas poli
(muchos) y morfos (formas) y se utiliza para indicar que un nombre
puede denotar instancias (objetos) de clases diferentes que están
relacionadas por alguna superclase común.
El polimorfismo puede considerarse como la característica más potente
de los lenguajes orientados a objetos, después de su capacidad para
soportar la abstracción.
Existe polimorfismo cuando interactúan las características de herencia y
enlace dinámico.
Diagramas UML de clases
Los diagramas de clases facilitan las representaciones a partir de las cuales
los desarrolladores podrán trabajar. Los diagramas de clases colaboran en
lo referente al análisis. Permite al analista hablarle a los clientes en su
propia terminología, lo cual hace posible que los clientes indiquen
importantes detalles de los problemas que requieren ser resueltos.
CLASE OBJETO
acciones
atributos
nombre
Terminología y Conceptos
Terminología y Conceptos
Una relación es una conexión entre elementos. En el lenguaje de modelado
orientado a objetos, las tres relaciones más importantes son las de
dependencias, las generalizaciones y las asociaciones.
Dependencia. Es una relación de uso que declara que un cambio en la
especificación de un elemento puede afectar a otro elemento. Las
dependencias se representan con una flecha y se emplean cuando se quiere
indicar que un elemento utiliza a otro. Por ejemplo:
Generalización. Es una relación entre un elemento general (llamado
superclase o padre) y un caso mas específico de ese elemento
(llamado subclase o hijo). La generalización se llama a veces
relación "es-un" (un elemento mas general). Las relaciones se
utilizan cuando se quieran mostrar relaciones padre/hijo.
Asociación. Es una relación estructural que especifica que los
objetos de un elemento están conectados con los de otros. Las
asociaciones se utilizan cuando se quiere representar relaciones
estructurales, es decir, se define que se puede navegar desde un
objeto de una clase hasta otro objeto de otra clase y viceversa.
La asociación tiene cuatro tipos de partes: el nombre, el rol, la
multiplicidad y la agregación.
Analizar el enunciado del Problema
El análisis comienza con la definición de un problema
generada por clientes y, posiblemente, por los
desarrolladores. El análisis hace que sea más precisa
y expone las ambigüedades e incongruencias y no
debería tomarse como inmutable, sino que tiene que
servir como base para refinar los requisitos reales.
Identificar funciones del Sistema
Consiste en describir por escrito a nivel técnico
los procedimientos relacionados con el programa
y su modo de uso. También se debe documentar
el programa para que sea más entendible.
¿Para quiénes son la documentación? - Usuarios
(Digitadores) - Operadores - -Programadores -
Analistas de sistemas
Los componentes de un diagrama de interacción son:
Un Objeto o Actor. Mensaje de un objeto a otro objeto. Mensaje de un
objeto a si mismo. Elementos
Objeto/Actor:
El rectángulo representa una instancia de un Objeto en particular, y la línea
punteada representa las llamadas a métodos del objeto.
Mensaje a Otro Objeto:
Se representa por una flecha entre un objeto y otro, representa la llamada
de un método (operación) de un objeto en particular.
Mensaje al Mismo Objeto:
No solo llamadas a métodos de objetos externos pueden realizarse,
también es posible visualizar llamadas a métodos desde el mismo objeto en
estudio
Uso del sistema
Diagrama de clases
Clases de Java
• java.lang - clases esenciales, números, strings, objetos,
compilador, runtime, seguridad y threads (es el único paquete que
se incluye automáticamente en todo programa Java)
• java.io - clases que manejan entradas y salidas
• java.util - clases útiles, como estructuras genéricas, manejo de
fecha, hora y strings, número aleatorios, etc.
• java.net - clases para soportar redes: URL, TCP, UDP, IP, etc.
• java.awt - clases para manejo de interface gráfica, ventanas, etc.
• java.awt.image - clases para manejo de imágenes
• java.awt.peer - clases que conectan la interface gráfica a
implementaciones dependientes de la plataforma (motif, windows)
• java.applet - clases para la creación de applets y recursos para
reproducción de audio.

Presentación unidad 1 programación orientada a objetos

  • 1.
    Objetivo general delcurso: Diseñar e implementar objetos de programación que permitan resolver situaciones reales y de ingeniería. POO L.I. ANGELITA VENTURA SÁNCHEZ
  • 2.
    Introducción al paradigmade la programación orientado a objetos. Objetivo de la unidad: Comprender, describir y modelar los conceptos principales del paradigma de programación orientado a objetos y aplicarlos a situaciones de la vida real. ITSTB
  • 3.
    Programación orientada aobjetos …Objetos Grady Booch nos da la siguiente definición: Es un método de implementación en el que los programas se organizan en colecciones cooperativas de objetos, cada uno de los cuales representa una instancia de alguna clase, y cuyas clases son, todas ellas, miembros de una jerarquía de clases unidas mediante relaciones de herencia.
  • 4.
    1.1 Elementos delmodelo de objetos:  Clases  Objetos  Abstracción  Modularidad  Encapsulamiento  Herencia  Polimorfismo.
  • 5.
    Objetos:  Un objetodel mundo real es cualquier cosa que vemos a nuestro alrededor.  Un Objeto representa una entidad del mundo real o inventada, concreta o conceptual.
  • 6.
    …Objetos Podemos distinguir cadaobjeto con base a sus características y comportamientos. Por ejemplo, en el aula observamos los objetos: alumno profesor mesa silla mesabanco pizarrón
  • 7.
    …Objetos Interacción entre objetos. Losobjetos no sólo tienen atributos relacionados con su forma física sino que, además, exhiben comportamientos específicos de su clase. Por ejemplo: alumno: estudia, aprende. profesor: enseña, evalúa. mesa: ordenada, desordenada. silla: ocupada, desocupada. mesabanco: ocupado, desocupado. pizarrón: pintado, borrado.
  • 8.
    …Objetos EJEMPLO: En el aulahay varios objetos alumno, al que denominaremos como la clase Alumno. Cada materia es impartida por un profesor; el conjunto de profesores forman la clase Profesor. Pizarrón, la mesa, la silla, al conjunto de materiales la podemos denominar Clase materiales. Los objetos externos al aula también pueden considerarse como elementos de diversos conjuntos, de acuerdo a sus características esenciales. Así, detectamos las clases: Celular, Árbol, Piedra, Laboratorio, Auto, Camión, Libro, etc.
  • 9.
    Estructura y funcióndel objeto:  Identidad: ¿Quien soy? = Atributos  Propósito: ¿Cual es mi misión? = Justificación  Responsabilidades: ¿Qué debo hacer? = Métodos  Procedencia: ¿De qué Clase provengo? = Origen  Relaciones: ¿Qué mensajes entiendo? = Comportamiento
  • 10.
    Todo objeto delmundo real tiene 2 componentes: características y comportamiento. Automóvil marca: String modelo: String Color: String Llenar():void Acelerar():void Retroceder():void
  • 11.
    comportamiento El estado deun objeto y su comportamiento están relacionados, por ejemplo: No es posible aterrizar un avión sino está volando. Está volando como consecuencia de haber despegado del suelo. Los mensajes navegan por los enlaces. El estado en el que se encuentra un objeto determina su comportamiento. “El comportamiento de un objeto es cómo actúa y reacciona un objeto, en función de sus cambios de estado y paso de mensajes” [Booch]
  • 12.
    Clases  Una clasees una plantilla genérica para un conjunto de objetos de similares características.  Es un conjunto de objetos que comparten una estructura común y un comportamiento común
  • 13.
    …Clase Desde una perspectivaconceptual, una Clase representa un conjunto de Objetos que comparten: 1.Las mismas propiedades, caracteristicas (Atributos) 2.El mismo comportamiento (Métodos) 3.Las mismas relaciones con otros Objetos (Mensajes) Los objetos que se han creado a partir de una Clase concreta, se llaman instancias de esta Clase y se diferencian entre ellos únicamente por los valores de sus atributos (variables).
  • 14.
    Abstracción: Consiste en captarlas características esenciales de un objeto, así como su comportamiento.  En el modelo de objetos, las características esenciales de los objetos estarán determinadas por el tipo de problema que se vaya a resolver con ellos.  Así, las características de un objeto que deberán tomarse en cuenta para la solución de un problema no necesariamente serán las mismas a considerar para la solución de otro problema con el mismo objeto. Es decir, se crean modelos diferentes del objeto para resolver cada problema.
  • 15.
    Ejemplo 1: La Direcciónde Tránsito necesita un sistema para cobro de placas y tenencia, y control vehicular. En este caso, el objeto a modelar es el VEHÍCULO. Hablaremos de la clase vehículo para considerar todos los vehículos posibles y no uno de ellos en particular. Las características esenciales a considerar de la clase Vehículo son: Origen (nacional, extranjero) Marca Modelo Color Tipo de vehículo ( automóvil, camión de carga, pasajeros, camioneta, etc.) Tipo de Combustible (gasolina, diesel, etc.) Uso (particular, público) Nombre del propietario, Dirección del propietario
  • 16.
    Ejemplo 2: La gerenciadel taller mecánico "Servicio de Excelencia" necesita un sistema para controlar los vehículos que ingresan a sus instalaciones. El taller se especializa en automóviles que utilizan gasolina como combustible. En este caso, las características esenciales de la clase Vehículo son :
  • 17.
    Respuesta Marca Modelo Color Falla detectada Nombre delpropietario Dirección del propietario Teléfono del propietario TAREA: 5 EJEMPLOS DE CLASES CON SUS ATRIBUTOS Y COMPORTAMIENTOS
  • 18.
    Música Popular Mexicana. Canción Norteña, Canción Ranchera, Corrido Cumbia, Son, mambo, Danzón, Música Banda, marimba clases hija heredan todas las propiedades Las clases hijas pueden adicionar, cambiar u ocultar los miembros públicos de la clase padre usando las reglas de la herencia clase padre
  • 19.
    Clase padre Músicade México Atributos: Tipo de ritmo, tipo de instrumentos, músicos. Métodos: bailada, cantada, tocada Clase hija Ranchera (hereda las propiedades de la clase padre) Atributos: Tipo de ritmo, tipo de instrumentos, músicos. Métodos: bailada, cantada. El nuevo método incluye el tocar un instrumento tocada Clase hija Danzon (hereda las propiedades de las clase padre) Atributos Tipo de ritmo, tipo de instrumentos, músicos. Métodos: Bailada, cantada, tocada.
  • 20.
    Encapsulamiento El encapsulamiento esel proceso de almacenar en un mismo comportamiento los elementos de una abstracción que constituyen su estructura y su comportamiento; sirve para separar la interfaz contractual de una abstracción y su implementación.
  • 21.
    Encapsulamiento Encapsulamiento: Es cuandoun objeto trae consigo su funcionalidad esta última se oculta. Los objetos encapsulan lo que hacen; es decir ocultan la funcionalidad interna de sus operaciones. Indica la capacidad que tienen los objetos de construir una cápsula a su alrededor, ocultando la información que contienen (aquélla que es necesaria para su funcionamiento interno, pero innecesaria para los demás objetos) a las otras clases que componen la aplicación Podemos imaginarla encapsulación como introducir el objeto dentro de una caja negra donde existen dos ranuras denominadas entrada y salida. Si introducimos datos por la entrada automáticamente obtendrá un resultado en la salida. No necesita conocer ningún detalle del funcionamiento interno de la caja.
  • 22.
    …Encapsulamiento Los nombres degrupos de objetos del mundo real son una especie de código inventado por los humanos para representar a grupos de objetos a través de parejas nombre: definición. Tomemos como ejemplo el objeto denominado mesa. Con base a las características más relevantes para el usuario, la definición de mesa es: "Mueble construido con material sólido, que consiste de cuatro patas y una placa horizontal, y que sirve para colocarle objetos encima”. Esta definición sirve para cualquier objeto de la clase Mesa. Sin ella, tardaríamos demasiado tiempo en comunicar nuestra idea acerca del objeto.
  • 23.
    …Encapsulamiento Así, sería máscomplicado decir: "Pon esto sobre el mueble construido con material sólido, que consiste de cuatro patas y una placa horizontal, y que sirve para colocarle objetos encima" que: "Pon esto sobre la mesa" Esta última forma obliga a que los indivíduos que se comunican conozcan el nombre y la definición del objeto; en términos de orientación a objetos, que conozcan sus características y su funcionamiento. De esta manera, los humanos hemos acumulado y organizado nuestro conocimiento acerca de los objetos que nos rodean, impulsados por nuestra necesidad de interactuar con ellos.
  • 24.
    Ejemplo 1 De untelevisor, el usuario conoce su apariencia y parte de su funcionamiento. Sólo le importa que funcionen el selector de canales, el vídeo y el audio; no le interesa saber cómo funciona cada una de las partes internas del aparato, esos detalles sólo les interesan al fabricante y al técnico de servicio.
  • 25.
    Abstracción Abstracción La abstracción esuna de las principales herramientas con que combatimos la complejidad. Una abstracción denota las características esenciales de un objeto y proporciona límites conceptuales definidos respecto a la perspectiva del observador.
  • 26.
    .. Abstracción Abstracción Ejemplo: Para elTaller de Mantenimiento, el objeto mesabanco consiste en un mueble compuesto por un armazón, un asiento, un respaldo y una paleta. De estos elementos es importante conocer sus dimensiones, el material de que están hechos y su color. Así, los atributos de la clase MesaBanco serían: Para la Oficina de Control de Inventario, el mismo objeto mesabanco se modela tomando en consideración: clave del mueble, descripción del mueble, departamento al que está asignado, nombre de la persona que lo tiene a su resguardo, y costo del mueble. En este caso, la clase MesaBanco tendría los siguientes atributos :
  • 27.
    .. Abstracción Abstracción Comportamientos Los objetosno solamente poseen atributos, sino que también exhiben comportamientos que manifiestan al interactuar con otros objetos en un esquema cliente/servidor, donde un cliente es cualquier objeto que utiliza los recursos de otro objeto denominado servidor. El modelo de objetos maneja en un sólo paquete los atributos y comportamientos de los objetos, por medio de un principio denominado encapsulamiento.
  • 28.
    Modularidad La modularidad esla descomposición de un sistema en un conjunto de módulos cohesivos y débilmente acoplados.
  • 29.
    Jerarquía La jerarquía esuna clasificación u ordenación de abstracciones. La estructura de clases se representa por medio de una jerarquía que muestra la relación de herencia es un.
  • 30.
    Herencia La herencia definela relación entre clases es un, donde una subclase hereda de una o más superclases.
  • 31.
    Polimorfismo La palabra polimorfismotiene como origen las palabras griegas poli (muchos) y morfos (formas) y se utiliza para indicar que un nombre puede denotar instancias (objetos) de clases diferentes que están relacionadas por alguna superclase común. El polimorfismo puede considerarse como la característica más potente de los lenguajes orientados a objetos, después de su capacidad para soportar la abstracción. Existe polimorfismo cuando interactúan las características de herencia y enlace dinámico.
  • 32.
    Diagramas UML declases Los diagramas de clases facilitan las representaciones a partir de las cuales los desarrolladores podrán trabajar. Los diagramas de clases colaboran en lo referente al análisis. Permite al analista hablarle a los clientes en su propia terminología, lo cual hace posible que los clientes indiquen importantes detalles de los problemas que requieren ser resueltos. CLASE OBJETO acciones atributos nombre
  • 33.
    Terminología y Conceptos Terminologíay Conceptos Una relación es una conexión entre elementos. En el lenguaje de modelado orientado a objetos, las tres relaciones más importantes son las de dependencias, las generalizaciones y las asociaciones. Dependencia. Es una relación de uso que declara que un cambio en la especificación de un elemento puede afectar a otro elemento. Las dependencias se representan con una flecha y se emplean cuando se quiere indicar que un elemento utiliza a otro. Por ejemplo:
  • 34.
    Generalización. Es unarelación entre un elemento general (llamado superclase o padre) y un caso mas específico de ese elemento (llamado subclase o hijo). La generalización se llama a veces relación "es-un" (un elemento mas general). Las relaciones se utilizan cuando se quieran mostrar relaciones padre/hijo.
  • 35.
    Asociación. Es unarelación estructural que especifica que los objetos de un elemento están conectados con los de otros. Las asociaciones se utilizan cuando se quiere representar relaciones estructurales, es decir, se define que se puede navegar desde un objeto de una clase hasta otro objeto de otra clase y viceversa. La asociación tiene cuatro tipos de partes: el nombre, el rol, la multiplicidad y la agregación.
  • 36.
    Analizar el enunciadodel Problema El análisis comienza con la definición de un problema generada por clientes y, posiblemente, por los desarrolladores. El análisis hace que sea más precisa y expone las ambigüedades e incongruencias y no debería tomarse como inmutable, sino que tiene que servir como base para refinar los requisitos reales.
  • 39.
    Identificar funciones delSistema Consiste en describir por escrito a nivel técnico los procedimientos relacionados con el programa y su modo de uso. También se debe documentar el programa para que sea más entendible. ¿Para quiénes son la documentación? - Usuarios (Digitadores) - Operadores - -Programadores - Analistas de sistemas
  • 42.
    Los componentes deun diagrama de interacción son: Un Objeto o Actor. Mensaje de un objeto a otro objeto. Mensaje de un objeto a si mismo. Elementos Objeto/Actor: El rectángulo representa una instancia de un Objeto en particular, y la línea punteada representa las llamadas a métodos del objeto. Mensaje a Otro Objeto: Se representa por una flecha entre un objeto y otro, representa la llamada de un método (operación) de un objeto en particular. Mensaje al Mismo Objeto: No solo llamadas a métodos de objetos externos pueden realizarse, también es posible visualizar llamadas a métodos desde el mismo objeto en estudio
  • 46.
  • 48.
  • 49.
    Clases de Java •java.lang - clases esenciales, números, strings, objetos, compilador, runtime, seguridad y threads (es el único paquete que se incluye automáticamente en todo programa Java) • java.io - clases que manejan entradas y salidas • java.util - clases útiles, como estructuras genéricas, manejo de fecha, hora y strings, número aleatorios, etc. • java.net - clases para soportar redes: URL, TCP, UDP, IP, etc. • java.awt - clases para manejo de interface gráfica, ventanas, etc. • java.awt.image - clases para manejo de imágenes • java.awt.peer - clases que conectan la interface gráfica a implementaciones dependientes de la plataforma (motif, windows) • java.applet - clases para la creación de applets y recursos para reproducción de audio.