Documente Academic
Documente Profesional
Documente Cultură
Objetos
POO
2/19/15
POO - AIGL
Unidad I:
El paradigma Orientado a Objetos.
1.1 Introduccin, surgimiento y
desarrollo del paradigma Orientado
a Objetos
1.2 Clases y Objetos
1.3 Encapsulamiento
1.4 Herencia
1.5 Polimorfismo
1.6 Sobrecarga de Operadores y
Funciones
2/19/15
POO - AIGL
2/19/15
POO - AIGL
2/19/15
POO - AIGL
1.1.- INTRODUCCIN, SURGIMIENTOS Y DESARROLLO DEL PARADIGMA ORIENTADO A OBJETO
PROGRAMACION
2/19/15
IMPERATIVA
LOGICO
C 1972,
PASCAL
PROLOG
FUNCIONAL
LISP
POO - AIGL
ORIENTADO A
OBJETO
Visual NET , JAVA
EL PARADIGMA IMPERATIVO
Este paradigma
paradigma duro
duro lo
lo suficiente
suficiente hasta
hasta que
que las
las compaas
compaas yy
Este
empresas tuvieron
tuvieron una
una explosin
explosin de
de sus
sus actividades
actividades yy pasaron
pasaron
empresas
de ser
ser locales
locales aa ser
ser regionales
regionales yy nacionales,
nacionales, aumentado
aumentado su
su
de
gradode
decomplejidad
complejidadyymanejo
manejode
deinformacin,
informacin,este
estese
seagudizo
agudizo
grado
cuandolas
lasnecesidades
necesidadespasaron
pasaronlas
lasfronteras
fronterasde
delos
lospases
pasesyylas
las
cuando
empresas nacionales
nacionales se
se trasformaron
trasformaron en
en compaas
compaas
empresas
internacionales. .
internacionales
2/19/15
POO - AIGL
EL PARADIGMA LGICO
Orientado a la Inteligencia Artificial
La programacin lgica comprende dos paradigmas de programacin: la
programacin declarativa y la programacin funcional.
La programacin declarativa gira en torno al concepto de predicado, o relacin
entre elementos.
le_gusta_a(juan,maria).
valioso(oro).
Tiene(juan,libro).
da(juan,libro,maria).
POO - AIGL
.EL PARADIGMA LGICO
Campos de Aplicacin
Sistemas expertos, donde un sistema de informacin imita las
recomendaciones de un experto sobre algn dominio de
conocimiento.
2/19/15
POO - AIGL
El paradigma Funcional
Entrada
Proceso
Salida
2/19/15
POO - AIGL
El paradigma Funcional
Entrada
Proceso
Salida
2/19/15
POO - AIGL
10
POO - AIGL
11
2/19/15
POO - AIGL
12
2/19/15
POO - AIGL
13
2/19/15
POO - AIGL
14
Objetos Fsicos
Aviones en un sistema de trafico areo.
Automviles en un sistema de control de
trafico terrestre.
Casas.
Animales
Vertebrados
Invertebrados
Pescados
2/19/15
POO - AIGL
15
2/19/15
Objeto: Pelcula
Atributos: Nombre
Director
Genero
Duracin
Color
POO - AIGL
16
Nombre
Atributos
Mtodos
Notacin Grafica OMT
Mtodos
Notacin grafica Yourdon / Coad
2/19/15
17
Ejemplo.
Coche 1
Matricula
Marca
Precio
Ao compra
Calcular_Precio_Actua
l
2/19/15
POO - AIGL
18
Atribut
os
Mtod
os
Mensaj
e
Agregacin
Uso
2/19/15
POO - AIGL
19
Abstraccin
Las caractersticas esenciales de un objeto, sin preocuparse de las
restantes caractersticas (no esenciales)
Centrado en la vista externa de un objeto, de modo que sirva para
separar el comportamiento esencial de un objeto de su implementacin.
Con nfasis al Qu hace? Ms al Cmo lo hace?
Permite disponer de las caractersticas de un objeto.
Por ejemplo para un sistemas de matrcula del objeto persona
podemos obtener las caractersticas nombre, edad, direccin,
estado civil, etc.
si lo requerimos para el rea de biologa, dentro de sus atributos
quiz tengamos, ADN, Tipo de Sangre, etc.
2/19/15
POO - AIGL
20
Abstraccin
POO - AIGL
21
Encapsulamiento
Permite asegurar que el contenido de la informacin de un objeto
est oculta al mundo exterior: El contenido del objeto A est oculto
al contenido del objeto B.
Conocida como la ocultacin de la informacin.
La encapsulacin permite la divisin de un programa en mdulos.
Estos mdulos se implementan mediante clases, de forma que una
clase representa la encapsulacin de una abstraccin, en la
prctica esto significa que cada clase debe tener dos partes: un
interfaz y una implementacin.
El interfaz de una clase captura solo su vista externa y la
implementacin contiene la representacin de la abstraccin, as
como los mecanismos que realizan el comportamiento deseado.
2/19/15
POO - AIGL
22
Ejemplos
Cuando vemos televisin no nos preocupamos del modo
como ste funciona, o lo que hace para cambiar de canal o
aumentar de volumen
2/19/15
POO - AIGL
23
2/19/15
POO - AIGL
24
2/19/15
POO - AIGL
25
Encapsulamiento
Una de las premisas de POO, es que la mayora, sino todos, los
atributos de un objeto deben ser privados, esto para tener
seguridad sobre los valores del objeto, pero entonces...cmo
acceder a los atributos de una clase?, la respuesta,
encapsulamiento, los mtodos de encapsulamiento se utilizan slo
cuando es apropiado entregar los datos a otro objeto que solicite la
informacin.
Piensa en tus atributos, tienes nombres, apellidos, etc , todos esos
atributos son privados, pero si son privados...porque la gente me
llama por mi nombre? fcil, por los mtodos de encapsulamiento
que permiten al objeto entregar la informacin que sea solicitada
por otro objeto...
2/19/15
POO - AIGL
26
Encapsulamiento
te encuentras en un Bar, a lo lejos en la
penumbra vez una sombra que se acerca a tu
mesa, ests slo era de esperarse porque
nadie te quiere...
(s ests leyendo esto es porque eres
programador, los programadores no tienen
amigos, eso todo el mundo lo sabe)...
pero la sombra se sigue acercando,
cuando la reducida luz que se
encuentra sobre tu persona, alcanza
a iluminar ligeramente a la persona
desconocida vez que es lo que
estabas esperando, es la mujer ms
hermosa
del mundo
te para
tieneconocer
ganas,
ella
atraves
todo el ybar
tu atributo privado nombre, tu utilizas
t mtodo de des-encapsulamiento
para
entregarle a la desconocida
ese
2/19/15
POO - AIGL
valor...
27
Encapsulamiento
pfff entonces, para qu encapsulo si al final voy a entregar el
valor a cualquier desconocido?.
Imagina la misma escena, slo que
esta vez no es el amor de tu vida sino
un ladrn que te va a hacer el paso
millonario y que esta vez no est
interesado en tu nombre sino en tu
PIN de la tarjeta, tu se lo entregas?,
NO! por eso es importante encapsular
los atributos de una clase, para que
los objetos slo puedan entregar los
valores que sean programados por ti
y no por nadie ms.
2/19/15
POO - AIGL
28
Encapsulamiento
(ocultamiento de la informacin) es
la idea de empacar juntas en una
Unidad de programacin una
coleccin de miembros de datos y
sus funciones (Operaciones) bien
definida.
2/19/15
POO - AIGL
29
Encapsulamiento
(ocultamiento de la informacin) es
la idea de empacar juntas en una
Clase de programacin una
coleccin de miembros de datos y
sus funciones (Operaciones) bien
definida.
2/19/15
POO - AIGL
30
2/19/15
POO - AIGL
31
Encapsulamiento
La Clase es, por otro lado, una encapsulacin porque constituye
una cpsula o saco que encierra y amalgama de forma clara
tanto los datos de que constan los objetos como los
procedimientos que permiten manipularlos. Las Clases se
constituyen, as, en abstracciones encapsuladas
2/19/15
POO - AIGL
32
CLASES
Por consiguiente, los objetos no son mas que instancias de una clase. Una
instancia es una variable de tipo objeto.
Ejemplo:
Carro
Ao
Pasajeros
Color
Modelo
Encender
Apagar
2/19/15
POO - AIGL
33
CLASES
Clases
Una descripcin abstracta de un conjunto de objetos, cada
uno de los cuales se diferencia por su estado especfico y
por la posibilidad del objeto de realizar una serie de
operaciones.
2/19/15
POO - AIGL
34
Clases
Las clases son una descripcin abstracta, ideal de un
grupo de objetos, cada uno de los cuales se diferencia
por un estado especifico y es capaz de realizar una
serie de operaciones.
1.- Carlos Meja Godoy, Katia Cardenal, Jos Manuel Espinoza
pertenecen a la clase cantantes de Nicaragenses
2.- Jeff, Alejandra, Moiss, Alejandro pertenecen a la clase de
Estudiantes del 2M4-Co
3.- Carlos Andrs Prez, Violeta Barrios, Bill Clinton,
pertenecen a la clase Ex presidentes de Amrica
2/19/15
POO - AIGL
35
Clases
2/19/15
POO - AIGL
36
Clase:
Trabajadores
UNI
2/19/15
POO - AIGL
37
Modularidad
2/19/15
POO - AIGL
38
Mtodos
Algoritmo asociado a un objeto (o Clase
de objetos), cuya ejecucin se
desencadena tras la recepcin de un
mensaje.
Desde el punto de vista del
comportamiento, es lo que el objeto
puede hacer.
Un mtodo puede producir un cambio en
del
objetos.
2/19/15 las propiedades POO
- AIGL
39
Mensajes
Los objetos de un programa interactan
y se comunican entre ellos por medio de
mensajes
A veces el objeto que recibe el mensaje
necesita ms informacin Esta
informacin se pasa junto con el
mensaje enElforma
de parmetro.
objeto al cual se manda el
mensaje
Partes del mensaje
El mtodo o funcin
2/19/15
40