Você está na página 1de 34

PROGRAMACION ORIENTADA

A OBJETOS

Ing. Ricardo Trujillo


1

HISTORIA

A finales de los 60s.


Noruega.
Simula 67 (clases y subclases).
En los 70s.
Palo Alto (Xerox Park).
SmallTalk
Se le considera el lenguaje mas puro.
Ing. Ricardo Trujillo
2

Con Simula y SmallTalk qued


demostrada el ahorro de
programacin si las
propiedades comunes a los
objetos se programan una
sola vez.
Ing. Ricardo Trujillo
3

Por qu tard en llegar ?


Debido a las plataformas de trabajo
existentes para ambos lenguajes.
Eran lenguajes conocidos slo en las
Universidades.
Hasta 1980, se da a conocer SmallTalk.
La gente consider que era un sistema de
ventanas y no apreci el paradigma.
Ing. Ricardo Trujillo
4

Lenguaje C
En los 80s C se convierte en un lenguaje
popular de desarrollo.
Los Laboratorios Bell, ampliaron el
lenguaje para que pudiera soportar el
paradigma OO.
Le llam C++.
Ing. Ricardo Trujillo
5

Cmo gan la batalla de


popularidad
El paradigma OO, empez a llamar la
atencin.
La gente lo poda aprender en un lexico
ya conocido la POO.
No se inverta ezfuerzo en aprender
nuevos entornos ni lenguajes.
Ing. Ricardo Trujillo
6

Porqu es importante la Ingenieria


de Software
Representa una metodologa de
desarrollo creciente hacia un fin.
La POO no necesita un conocimiento
completo de las fases que anteceden a
una de ellas.
Existen metodologas como la de Booch o
Cood-Jourdan, creadas para la POO.

Ing. Ricardo Trujillo


7

En nuestro caso usaremos los


TAD

Ing. Ricardo Trujillo


8

El costo del Software


Construccin.
Analisis.
Especificacin.
Diseo.

Mantenimiento.
Correccin de errores.
Cambios debido a
revisiones.

Ing. Ricardo Trujillo


9

Evolucin de las topologas de


los lenguajes

Ing. Ricardo Trujillo


10

Primera generacin y principios de la 2a.


(1954-1958)
DATOS

SubProgramas
11
Ing. Ricardo Trujillo

Caractersticas
Los contenedores fisicos son
SubProgramas.
Datos globales.
Los datos eran vistos por todos.
Un error era desvastador.
FORTRAN, ALGOL 58, COBOL,
FLOWMATIC, IPL V.
Ing. Ricardo Trujillo
12

Mediados de los 60s


finales de la 2a. Y principios de la 3a.
DATOS
funciones

SubProgramas
13
Ing. Ricardo Trujillo

Caractersticas
El cdigo finalmente fu reconocido como un
punto intermedio entre el problema y la
computadora. Y como consecuencia nace la
abstraccion procedural.
1. Se desarrollaron mecanismos de paso de
parmetros.
2. Se crearon los fundamentos de la
programacin estructurada.
3. Mtodos de diseo para la construccin de
grandes sistemas.
Ing. Ricardo Trujillo
14

Se desarrollaron lenguajes que:


Soportan el anidamiento de
SubProgramas.
Estructuras de Control.
Variables locales y globales.
FORTRAN II, ALGOL 60, COBOL Y
LISP.

Ing. Ricardo Trujillo


15

Finales de la tercera generacin


(1962-1970)
DATOS
funciones

SubProgramas
Ing. Ricardo Trujillo
16

Caractersticas

Aparecieron los grandes proyectos.


Necesidad de desarrollar partes de forma
independiente.
Aparece la compilacin separada lgica.

Ing. Ricardo Trujillo


17

Caractersticas de los lenguajes


Soportaban estructura modular.
Tenian pocas reglas.
+ Consistencia
semntica, referente
a las Interfaces del
mdulo.

Pl/1, ALGOL 68, PASCAL, SIMULA


Ing. Ricardo Trujillo
18

Topologa de los lenguajes BO y


OO
Se utiliza la abstraccin de datos para
controlar la complejidad.
El programa es representado por una
coleccin de objetos y/o clases.
No existen datos globales.
Los datos y las operaciones son
colocadas en bloques lgicos.
Ing. Ricardo Trujillo
19

Mensajes

Datos
Mtodos

Objetos

Ing. Ricardo Trujillo


20

Conceptos de la POO

Ing. Ricardo Trujillo


21

Definiciones de Objeto
+ Es un componente del mundo real,
que se tranforma en el dominio del
software.
+ Es un elemento, unidad o identidad (real o
abstracta), que se tranforma en el dominio
del software; con un papel bien definido en
el dominio del problema.
Ing. Ricardo Trujillo
22

Un objeto es una entidad que tiene:


estado, comportamiento e identidad
1. Estado: son los valores de los atributos
que identifican el estado del objeto.
2. Comportamiento: esta definido en base a
sus operaciones.
3. Identidad: se determina, en base al estado de un
objeto.
Ing. Ricardo Trujillo
23

Anatoma de un Objeto
Objeto
mensajes

Datos
Mtodos
Ing. Ricardo Trujillo
24

Ciclo de vida del software


Anlisis Oreintado a Objetos (basada en
TADS)
Diseo Oreintado a Objetos (Rose)
Programacin Orientada a Objetos

Ing. Ricardo Trujillo


25

Mecanismos Bsicos

Mensaje y
Mtodo
Objeto
Herencia

Clase y
SubClase

Ing. Ricardo Trujillo


26

Clases: es una abstraccin, donde


se agrupan atributos comunes de
diferentes elementos.
SubClase: es una abstraccin que
especializa a una Clase.

Ing. Ricardo Trujillo


27

Lista

Cola

Pila

Ing. Ricardo Trujillo


28

Vehculo

Vehculo
de Viento

Vehculo de Tierra

Vehculo
Motorizado

Vehculo de Agua

Vehculo de aire
29
Ing. Ricardo Trujillo

Herencia: es una relacin


entre clases donde una
comparte la estructura o el
comportamiento definido en
otra(s) clase(s).

Ing. Ricardo Trujillo


30

Herencia Sencilla
Lista

Pila

Cola

31
Ing. Ricardo Trujillo

Conceptos Clave

Polimorfismo

Abstraccin

Modularidad
Encapsulacin

Persistencia

Ing. Ricardo Trujillo


32

Jerarquizacion (abstraccin y por


especializaacin)
Abstraccin

De lo general a lo
particular.

Especializacin

Las caractersticas
que forman parte de
un concepto.
Dentro de clase.
Ing. Ricardo Trujillo
33

El Boing 747
Es un tipo-de
avin
Es un tipo- de
vehculo de aire
Es un tipo-de
Es un tipo-de:
Todas las
caracteristicas
que forman parte
de

vehculo motorizado
Es un tipo-de
vehculo
Ing. Ricardo Trujillo
34

Você também pode gostar