Académique Documents
Professionnel Documents
Culture Documents
a la POO (OOP)
1) Web Servicies
Javier Rojas y
2) SOA Arquitectura Orientada a Servicios
Maximiliano Rodriguez
Elba Guerray Christian Poliycroniadys
3) PHP
Efrain Vasquez y Christian Becles
4) JSP
Laura Garca y Edar Castro
5) Javascript
6) Eclipse (plugins C++, C, PHP,..)
Rafael Andara y Aldo Grazzina
5) Qt / C++ y QtJambi
http://es.wikipedia.org/wiki/Portada
[Presentacin 15min]
Contenido
Qu es?
Areas de aplicacin
Ejemplos Bsicos
Introduccin
Eficiencia
Portabilidad
Verificabilidad
Integridad (proteccin contra procesos sin derecho de acceso)
Facilidad de uso
Robustez (situaciones anmalas)
Extensibilidad
Reutilizacin
Compatibilidad, ...
Abstraccin en programacin
Procedimientos y funciones
Tipos de datos abstractos (TDA)
Objetos: son TDA a los que se aaden mecanismos como
herencia, mtodos, etc.
Programacin Orientada a
Objetos (POO)
Programacin Orientada a
Objetos (POO)
Programacin Orientada a
Objetos (POO)
Programacin Orientada a
Objetos (POO)
Divide y vencersl
Programacin Orientada a
Objetos (POO)
Los objetos son objetos?
Programacin Orientada a
Objetos (POO)
Ejemplos de objetos
Programacin Orientada a
Objetos (POO)
Ventajas de uso:
Caractersticas de POO, I
El modelo objeto
Abstraccin
Las caractersticas esenciales del objeto
Documento: insertar, borrar, ...
Encapsulamiento (ocultamiento de informacin)
Una clase contiene:
+ una interfaz pblica
+ una implementacin
Documento: posicionPrevia
Caractersticas de POO, II
Modularidad
Jerarqua
Tipos:
Herencia (es-un); generalizacin/especializacin
Caractersticas de POO, IV
Polimorfismo
concurrencia (multitarea)
Persistencia (guardar)
Adjetivos:
Valores de las propiedades
Verbos:
Comportamiento de los objetos
Lenguajes de POO
Cronologa resumida:
Fortran (1958)
LISP (1959)
BASIC (1964)
Pascal (1969)
Prolog (1971)
C++ (1986)
Object Pascal (1988)
CLOS (1989)
Java (1995)
Lenguajes de POO, II
Simula-67
Smalltalk-80
Beneficios:
Mejor mantenimiento
Estructuras ms reales de la informacin
Escalabilidad
Adaptabilidad
Inconvenientes:
Conceptos de POO, I
Conceptos principales:
Clase
Objeto (una instancia de una clase)
Jerarqua de herencia entre clases
Conceptos de POO, II
Objetos:
objeto=datos+mtodos
miembros de un objeto (o clase):
datos
mtodos
nombre de variable
Ejemplo:
Clase: Robot
Datos: x (entero), y (entero)
Mtodos:
entero posicionX ()
entero posicionY ()
Mtodos:
Constructores:
Robot (entero, entero)
Robot (entero)
Instanciacin:
robot1 = Robot(1,2)
Creacin y destruccin de
objetos
Encapsulamiento
Encapsulamiento, II
Ejemplo
clase Robot
Datos:
privado x (entero)
privado y (entero)
Constructores:
Encapsulamiento, III
Mtodos:
pblico void avanzar (entero, entero)
pblico entero getX ()
pblico entero getY ()
pblico void avanzar (entero)
Representacin
clase: Robot
Datos
x
y
Mtodos
Robot (entero, entero)
Robot (entero)
void avanzar (entero, entero)
void avanzar (entero)
entero getY ()
entero getX ()
Ejecucin de mtodos
Herencia
Herencia, II
Ejemplo:
Clase: RobotConFrontera
Clase padre: Robot
Datos:
Herencia, III
Clase: RobotConFrontera
Mtodos:
Constructores:
RobotConFrontera (entero, entero,
entero, entero)
RobotConFrontera (entero, entero, entero)
Herencia, II
Herencia, III
Herencia simple:
Herencia mltiple:
Herencia, IV
Clase abstracta:
Herencia, V
Herencia, IV
Framework
UML
UML