Programación Orientada a Objetos
Dr. Luis Gerardo de la Fraga
Departamento de Computaci´n o Cinvestav Correo-e: fraga@cs.cinvestav.mx
7 de diciembre de 2006
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
1/32
´ Motivacion
Se presentar´ en esta charla: a Una revisi´n hist´rica del o o paradigma OO Situar OOcontra otros paradigmas, en especial los lenguajes de muy alto nivel Una cr´ ıtica personal a la programaci´n OO o
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
2/32
Contenido
Introducci´n o Antecedentes de la programaci´n OO o Caracter´ ısticas del modelo OO Comparaci´n entre lenguajes OO o Clasificaci´n de los metodolog´ OO o ıas Loslenguajes de muy alto nivel ¿Cu´l es el mejor paradigma? a
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
3/32
´ Introduccion (1/3)
La programaci´n OO empez´ hace 30 a˜os o o n En los 1990s se increment´ dram´ticamente la demanda para o a sistemas de software OO, por la promesa en la revoluci´n en o el desarrollo de software. Hanaparerecido varias metodolog´ para el desarrollo de ıas software, que tienen que ver con algunas o todas las fases del ciclo de vida del software, desde los requerimientos al mantenimiento.
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
4/32
´ Introduccion (2/3)
Algunas caracter´ ısticas importantes de los sistemas de software actuales son:Complejidad: la arquitectura interna de los sistemas actuales de software es compleja, incluyen frecuentemente concurrencia y paralelismo. La abstracci´n en terminos de conceptos de OO o es una t´cnica que ayuda a tratar con la complejidad. e Amigabilidad: Este es un requerimiento de suma importancia para los sistemas de software en general. Reusabilidad: Tomar componentes creados por otros esmejor que crearlos nuevos. La herencia es un mecanismo de OO que estimula la reusabilidad del software. Facilita el r´pido a desarrollo del software.
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
5/32
´ Introduccion (3/3)
Las razones del r´pido desarrollo en los ultimos 15 a˜os han sido: a ´ n Una mejor modelaci´n de aplicaciones delmundo real o La posibilidad del reuso del software durante el desarrollo de un sistema de software
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
6/32
Antecedentes (1/2)
Simulación de sistemas Clases + objetos
Sistemas operativos Monitores
Abstracción de datos Tipos de datos abstractos + encapsulación
Inteligencia artificialMarcos
Paradigma Orientado a Objetos
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
7/32
Antecedentes (2/2)
La caracter´ ıstica com´n de estas ideas es que un objeto es una u entidad l´gica o f´ o ısica que est´ autocontenida. a
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o8/32
Caracter´ ısticas
OO se define por herencia, encapsulaci´n, m´todos y o e mensajes, como en Smalltalk. OO se define encapsulaci´n, abstracci´n de datos, m´todos, o o e mensajes, herencia y vinculaci´n din´mica. o a Es un modelo de simula el comportamiento ya sea de una parte del mundo real o imaginario. Objetos, clases y herencia. Los objetos son entidades aut´nomas que tienen un estado yresponden a mensajes. Las o clases agrupan los objetos por sus atributos y operaciones. Todas tienen el com´n de usar objetos como una u encapsulaci´n para proteger los datos con todas las o operaciones legales que actuan sobre esa informaci´n oculta. o
Dr. Luis Gerardo de la Fraga
Cinvestav
Evoluci´n de la Programaci´n Orientada a Objetos o o
9/32
´ Comparacion entre lenguajes OO...
Regístrate para leer el documento completo.