Presentación unidad 1 programación orientada a objetos

ernestuz 6 views 49 slides Sep 06, 2025
Slide 1
Slide 1 of 49
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49

About This Presentation

Programación orientada a objetos


Slide Content

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ónAbstracció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.
Tags