Sie sind auf Seite 1von 35

CAPITULO I

PROGRAMACIÓN
ORIENTADA A
OBJETOS

INFORMATICA SUPERIOR I
INTRODUCCION A LA PROGRAMACION ORIENTADO A OBJETOS (POO)

La programación orientada a objetos surge en la


historia como un intento para dominar la complejidad
que, de forma innata, posee el software.

Los seres humanos perciben el mundo como si


estuviera formado por objetos: mesas, sillas,
computadoras, coches, cuentas bancarias, etc. Donde
consiente o inconscientemente tienden a organizarlos,
clasificarlos, relacionarlos entre si, y hasta extraen las
características más importantes dependiendo de lo que
quieren hacer con ellas.

INFORMATICA SUPERIOR I
La programación orientada a objetos, ha tomado las
mejores ideas de la programación estructurada y los ha
combinado con varios conceptos nuevos y potentes
que incitan a contemplar las tareas de programación
desde un nuevo punto de vista. La programación
orientada a objetos, permite descomponer mas
fácilmente un problema en subgrupos de partes
relacionadas del problema. Entonces, utilizando el
lenguaje se pueden traducir estos subgrupos a
unidades autocontenidas llamadas objetos.

INFORMATICA SUPERIOR I
METODOLOGIA • Modelamiento
(PARADIGMA) • Abstracción

INFORMATICA SUPERIOR I
METODOLOGIA (PARADIGMA)

La POO es un paradigma (modelo o


patrón) de programación que usa
objetos y sus interacciones para
diseñar aplicaciones y programas de
computadora

INFORMATICA SUPERIOR I
MODELAMIENTO

La base de este paradigma es:

con base en

Modelar Entidades
con base en

Los Relevantes
problemas y tangibles
que se desea en el
resolver problema

INFORMATICA SUPERIOR I
Abstracción
• POO nos permite concentrarnos en resolver nuestro
problema en términos de conceptos del dominio.
• En la POO la abstracción se plantea en términos de
similitudes entre fenómenos, conceptos, y entidades.
• De esta manera, logramos identificar conceptos
generales (persona, auto, socket, mercado financiero ,
etc.) que puedan ser traducidos a construcciones básicas
(objetos) en nuestro paradigma.

abstracción
problema Modelo

INFORMATICA SUPERIOR I
Ejemplo:

Para la administración académica, participan las


siguientes entidades:

docentes

estudiantes
Administración asignaturas
académica

Aulas y/o
laboratorios

INFORMATICA SUPERIOR I
POO-DEFINICION

La POO es una metodología que basa la


estructura de los programas en torno a los
objetos. Donde todos los elementos que forman
parte del problema se conciben como objetos,
definiendo cuales son sus atributos y
comportamiento, como se relacionan entre sí y
como están organizadas.

La POO trata de aproximarse al modo de actuar


del hombre y no al de la máquina.

INFORMATICA SUPERIOR I
Continuación….

La programación orientada a objetos no debe


confundirse con un lenguaje programación
orientado a objetos.

La POO es un paradigma, es otra forma de


pensar, es una filosofía única que permite
solucionar problemas reales mediante la
abstracción de los diferentes
agentes,entidades o elementos que actúan en
el planteamiento de un problema.

INFORMATICA SUPERIOR I
…..Continuación

La POO se basa en las siguientes características:

1) Los diseñadores definen nuevas clases (o tipos) de


objetos.
2) Los objetos poseen una serie de operaciones
asociadas a ellos.
3) Las operaciones tienden a ser genéricas, es decir,
operan sobre múltiples tipos de datos.
4) Las clases o tipos de objetos comparten
componentes comunes mediante mecanismos
de herencia.

INFORMATICA SUPERIOR I
CONCEPTOS DE LA POO

Conceptos fundamentales que sustentan la POO:


• Objeto
• Clase
• Instancia
• Atributos
• Métodos

INFORMATICA SUPERIOR I
OBJETO
Un objeto no es más que un conjunto de variables (datos o
atributos) y comportamiento (funcionalidad y métodos)
relacionados entre sí.

Estructura Interna de un Objeto:


Atributos: Define el estado del objeto
Métodos: Define el comportamiento del objeto
………Continuación de definición de objeto

Un objeto tiene:
• Un estado
• Un comportamiento bien definido
• Una identidad única

ESTADO

 El estado de un objeto se compone de todas las


propiedades de un objeto (estáticas)
 Y los valores asociados a ellas (dinámicos).
 Estos valores pueden ser:
 Simples
 O denotar a otro objeto.
 Estado = Atributos = Datos miembro
ATRIBUTOS

• Variables que están dentro de los objetos y que


contienen los valores del objeto.
• También son llamados: propiedades, datos
miembro.
EJEMPLOS:
Fracción
1. Una Fracción está definido por un
Numerador 4
par de números naturales, los cuales
Denominador
se denominan el numerador y
8
denominador.

2. Un Fecha está definido por tres Fecha


datos: día, mes y año. Día
Mes 06/03/2017
Año
METODOS

• Son las operaciones que se pueden realizar


con los objetos de la clase.
• Son los procesos (funciones o
procedimientos) que permiten trabajar con
los datos de los objetos
• También son llamados: funciones miembro
• De acuerdo al trabajo que realizan los
métodos, estos se clasifican en:
Constructores, destructores,
ponedores, selectores.

INFORMATICA SUPERIOR I
EJEMPLO DE METODO

Representación gráfica de los métodos de las


clases CQuebrado y CVector

CQuebrado CVector

PonNumerador PonDimension
PonDenominador PonElemento
ObtDenominador ObtDimension
ObtNumerador ObtElemento
Simplificar Ordenar

INFORMATICA SUPERIOR I
CARACTERISTICAS GENERALES DE UN OBJETO

- Un objeto se identifica por un nombre o un identificador


único que lo diferencia de los demás.

- Un objeto posee estados.

- Un objeto tiene un conjunto de métodos.

- Un objeto tiene un conjunto de atributos.

- Los objetos soportan encapsulamiento.

- Un objeto tiene un tiempo de vida dentro del programa o


sistema que lo crea y utiliza. Para ser utilizado en un
algoritmo el objeto debe ser creado con una instrucción particular
(New ó Nuevo) y al finalizar su utilización es destruido con el uso
de otra instrucción o de manera automática.
Ejemplo:

Ejemplo: a. Problema: Una persona necesita ver televisión.


b. Solución: Existen 3 elementos o agentes que se pueden
abstraer del problema:
- En el problema planteado se especifican 3 elementos involucrados.
Cada elemento posee sus propias características y sus propios
comportamientos. En POO a estos elementos se les conoce bajo el
nombre de OBJETOS.
- En POO a las características que identifican a cada objeto se le
denominan ATRIBUTOS y a los comportamientos se les denominan
METODOS.
CLASE
Normalmente en el mundo real existen varios objetos
de un mismo tipo, o como diremos enseguida, de una
misma clase.
Las clases simplemente son conjuntos de
objetos que comparten propiedades y
comportamientos.

Objeto
auto
propiedades pertenece
a la «clase
transporte
»
comportamientos

INFORMATICA SUPERIOR I
…..CONTINUACION DE DEFINICION DE CLASE

• Luis Joyanes Aguilar


“Una Clase es un tipo definido por el
usuario(programador) que determina las
estructuras de datos y las operaciones
asociadas con este tipo”

“La Clase es simplemente un modelo que


se utiliza para describir uno o más objetos
del mismo tipo”

INFORMATICA SUPERIOR I
CARACTERISTICAS GENERALES DE UNA
CLASE

- Una clase es un nivel de abstracción alto. La clase permite


describir un conjunto de características comunes para los
objetos que representa.
- Un objeto es una instancia de una clase.
- Las clases se relacionan entre sí mediante una jerarquía.
Entre las clases se establecen diferentes tipos de relaciones de
herencia, en las cuales la clase hija (subclase) hereda los atributos
y métodos de la clase padre (superclase), además de incorporar
sus propios atributos y métodos.
Ejemplo, Superclase: Clase Avión
Subclases de Avión: Clase Avión Comercial, Avión de

Combate, Avión de Transporte

- Los nombres o identificadores de las clases deben


colocarse en singular (clase Animal, clase Carro, clase
INFORMATICA SUPERIOR I
Estudiante).
Instancia
• Una Instancia es una ocurrencia de la clase
• Al momento de crear un objeto se produce la
instanciación.
• Un Objeto es una instancia de una Clase específica
EJEMPLO:
Suponer que existe la clase Vehículo
• La placa de un taxi 356KIT es una instancia de la
clase Vehículo, o sea, un objeto de esa clase
• La placa de una camioneta 678PQR es otra
instancia de la clase Vehículo

INFORMATICA SUPERIOR I
MENSAJES

Mecanismo por el cual se solicita una acción sobre el


objeto
La interacción se basa en mensajes que son
enviados de un objeto a otro, de modo que el emisor
le pide al receptor la ejecución de un método.
Un objeto invoca un método como una reacción al
recibir un mensaje
La interpretación del mensaje dependerá del receptor

Paciente Médico

Mensaje

INFORMATICA SUPERIOR I
Ejemplo (uso de los conceptos)
Clase: Cuenta corriente

Instanciación: Cuenta Corriente A, B

Objeto: A Objeto: B
Num: 1234 Num: 9876
Nombre: Juan Nombre: María
Saldo: 350.000 Saldo: 450.600

Métodos Métodos

Depositar Depositar

Girar Girar

Consultar Consultar

INFORMATICA SUPERIOR I
• Encapsulamiento
PRINCIPIOS • Herencia
DE LA POO • Polimorfismo

Propiedades, que lo llevan a ser un


estilo de desarrollo que permite
crear código re-utilizable
INFORMATICA SUPERIOR I
Encapsulamiento
Proceso por el que se ocultan:
• Las estructuras de datos
• Los detalles de la implementación.
Permite considerar a los objetos como "cajas
negras", evitando que otros objetos accedan a
detalles que NO LES INTERESA.
Una vez creada la clase, las funciones usuarias
no requieren conocer los detalles de su
implementación.
Todos ellos están encapsulados o contenidos
dentro de la misma clase, de manera que son
miembros de dicha clase.

INFORMATICA SUPERIOR I
Ejemplo-Encapsulamiento

Atributos de una Cuenta Corriente:


• Número
• Saldo
¿Cómo se almacenan estos datos?

Métodos:
• Depositar
• Girar
• Conocer el saldo

INFORMATICA SUPERIOR I
HERENCIA
Permite reutilizar código creando nuevas clases a partir
de las existentes (construidas y depuradas)
Compromete una relación de jerarquía (es-un)
Una nueva clase se generará agregando atributos y/o
código a una clase existente
Una clase (derivada) puede heredar de otra clase
(base):
• Atributos y
• Métodos

INFORMATICA SUPERIOR I
Ejemplo-HERENCIA

PERSO

TRANSPORTE
NA NOMBRE AUTOMOVIL
DIRECCION
CI AVION

EMPLEA CLIENT ESTUDIA BARCO


DO E NTE
SUELDO CUENTA CARRERA

INFORMATICA SUPERIOR I
POLIMORFISMO

Capacidad que permite a dos clases diferentes


responder de forma distinta a un mismo mensaje

Esto significa que dos clases que tengan un método con


el mismo nombre y que respondan al mismo tipo de
mensaje (es decir, que reciban los mismo parámetros),
ejecutarán acciones distintas

INFORMATICA SUPERIOR I
Ejemplo-POLIMORFISMO

Hacer andar un automóvil no es lo mismo que un avión,


de forma tal que necesitamos agregar el método anda en
automóvil, para que ruede, y en avión para que vuele.

Esto se denomina polimorfismo, y nos permite tener


muchas formas de comportamiento.

INFORMATICA SUPERIOR I
AAPLICACIÓN DEL POO EN EL LENGUAJE JAVA

METODO
MAIN, DONDE
SE VAN
EJECUTAR
DENTRO DE
ESTE CODIGO
LOS OBJETOS

CLASE

INFORMATICA SUPERIOR I
RESUMEN
Las clases pueden ser organizadas en estructuras de
herencia jerárquicas.
Equilátero
Polimorfismo

Clase abstracta Triángulo Isósceles

Figura plana
Escaleno
Herencia simple

Rectángulo Cuadrado

Superclase Subclase
INFORMATICA SUPERIOR I
Gracias por su atención….

Por: Lic. Julia Torrez Soria

INFORMATICA SUPERIOR I

Das könnte Ihnen auch gefallen