Orientado
Tema 4 (a): Introducción a la POO
Jordi Linares i Pellicer
Índice
! ! ! ! ! !
Antecedentes históricos Razones para usar OO Paradigmas de programación Noción de Objeto Conceptos en la OO Lenguajes OO
Antecedentes históricos
"
La aparición de OO refleja y resume la historia de la computación como un todo. La POO son un conjunto de técnicas que nospermiten mejorar enormemente el proceso de producción de software Simula 67, conceptos de clase y herencia. El término “Orientado a Objetos” se introdujo con Smalltalk (70, PARC) El último gran paso lo da Bjarne Stroustrup en 1986 creando el C++, definido en su libro: The C++ Programming Language
"
" "
"
Idea básica
Manejar los datos y los procedimientos en una única entidad: el objeto. Unprograma es un objeto, que a su vez está formado de objetos.
Razones para usar OO
" " " "
Aumento de productividad: reutilización Manejo de la complejidad Calidad Mantenibilidad
Reutilización vs. SW tradicional:
"
Se construyen componentes ÚNICOS Y NO INTERCAMBIABLES.
! se
ensamblan “a mano” ! dificultad para entender el código realizado por otros para extender y refinar elproducto.
"
Raramente sobreviven y evolucionan (al menos) 10 años.
! No
"
son adaptables a los entornos cambiantes:
incremento del potencial Hardware, SO, expectativas de usuarios, etc.
Reutilización del SW en OO
"
La OO enfatiza la reutilización
! uso
de librerías de componentes, en particular a través de conceptos como encapsulación y herencia. ! los componentes tienden a teneruna alta cohesión semántica por el encapsulamiento de código y datos. ! utiliza la técnica de desarrollo incremental e iterativo. ! técnicamente la reutilización es “más fácil”, aunque no se garantice!.
Paradigmas de programación
"
Paradigma Imperativo (1)
! Expresa
algoritmos que se realizan basados en el funcionamiento de la arquitectura Von Neumann. ! Los datos se almacenan envariables (referencias abstractas de una dirección de memoria) y las operaciones se llaman instrucciones. ! Su realización es llamada ejecución.
! La
ejecución de un PROGRAMA IMPERATIVO parte de un estado inicial (Ei) y termina en un estado final (Ef). paso del estado inicial al estado final se realiza mediante una serie de transiciones que se producen al ejecutarse las instrucciones delprograma de forma secuencial.
! El
! El
paradigma se completa con otras características que dan mayor flexibilidad de cálculo:
" "
tipos de datos y declaraciones instrucciones de control de flujo y condicionales, etc.
" Paradigma
! Un
Orientado a Objetos
OBJETO es un ente autónomo que pertenece a una cierta CLASE que define su estructura y las operaciones utilizables. ! En elparadigma imperativo se crea una jerarquía de programas, módulos o subrutinas que utilizan los datos. ! En el paradigma OO la jerarquía la forman los objetos.
Noción de Objeto
"
Un objeto integra comportamiento y estado en una sola unidad de razonamiento y de programación: comportamiento + estado = objeto
Los objetos representan una “cosa” del mundo real, por ejemplo, una cuenta bancaria
M3M2 Objeto 1 M1
M4
Interactúan entre sí por el paso de mensajes...
M4 M3 Object 1 M1 M2
mensaje 2
M2 Object M3 2 M1 M4
mensaje 1
M3 M2 Object 3 M1 M4
mensaje 3
Noción de Objeto
Los objetos ocultan detalles de implementación...
Cta_banco : extraer depositar :
Array : agregar buscar :
Coche : repostar alquilar :
El cliente “ve” sólo la interfaz
Los objetosheredan (reutilizan) propiedades de objetos más genéricos
M4 M1 M3 M2
Persona
nombre dirección obtenerEdad()
Propio activo pasivo calcular%()
M4
Cliente
Heredado
M3 M2
nombre dirección obtenerEdad()
M1
En definitiva, los objetos:
"
Representan una parte del mundo real, algo tangible, visible. Encapsulan la parte estática (datos) y la dinámica (funciones). Se comunican a...
Regístrate para leer el documento completo.