La POO es un paradigma surgido en los años 1970 que utiliza objetos como elementos fundamentales en la construcción de la solución. Un objeto es una abstracción de algún hecho o ente del mundo real, con atributos que representan sus características o propiedades, y métodos que emulan su comportamiento o actividad. Todas las propiedades y métodos comunes a los objetos se encapsulan o agrupan en clases. Algunos lenguajes orientados a objetos incluyen Simula (1967) y Smalltalk (1972 a 1980).
2. DEFINICIÓN
La programación orientada a objetos (POO, u OOP según sus
siglas en inglés) es un paradigma de programación que viene a
innovar la forma de obtener resultados. Los objetos manipulan
los datos de entrada para la obtención de datos de salida
específicos, donde cada objeto ofrece una funcionalidad
especial. Muchos de los objetos pre-diseñados de los lenguajes
de programación actuales permiten la agrupación en
bibliotecas o librerías, sin embargo, muchos de estos lenguajes
permiten al usuario la creación de sus propias bibliotecas. Está
basada en varias
técnicas,incluyendo herencia, cohesión, abstracción, polimorfis
mo, acoplamiento y encapsulamiento.Su uso se popularizó a
principios de la década de 1990. En la actualidad, existe una
gran variedad de lenguajes de programación que soportan la
orientación a objetos.
3. CONCEPTO BASÍCOS (CLASES, METODO, HERENCIA, SOBRECARGA, EVENTO, ATRIBUTOS,
MESAJES, ETC.)
Un objeto es una encapsulación abstracta de información, junto con los métodos o
procedimientos para manipularla. Un objeto contiene operaciones que definen su
comportamiento y variables que definen su estado entre las llamadas a las operaciones.
Una clase equivale a la generalización o abstracción de un tipo específico de objetos.
Un mensaje representa una acción a tomar por un determinado objeto.
Una instancia es la concreción de una clase.
Un método consiste en la implementación en una clase de un protocolo de respuesta a los
mensajes dirigidos a los objetos de la misma. La respuesta a tales mensajes puede incluir el
envío por el método de mensajes al propio objeto y aun a otros, también como el cambio
del estado interno del objeto.
4.
5. Clase
Definiciones de las propiedades y comportamiento de un tipo de
objeto concreto. La instanciación es la lectura de estas definiciones
y la creación de un objeto a partir de ella.
Método
Evento
Atributos
Mensaje
Propiedad o atributo
Estado interno
Componentes de un objeto
Identificación de un objeto
6. Herencia
Por ejemplo, herencia de la clase C a la clase D, es la facilidad mediante
la cual la clase D hereda en ella cada uno de los atributos y operaciones
de C, como si esos atributos y operaciones hubiesen sido definidos por la
misma.
SOBRECARGA
Sobrecarga es la capacidad de un lenguaje de programación, que permite
nombrar con el mismo identificador diferentes variables u operaciones.
Evento
Los eventos son el medio como interactúa una clase con otras o con el
propio usuario, se encargan de avisar que algo ha ocurrido y de manejarlo
de una forma o de otra.
ATRIBUTO
Atributos (estado) están estrechamente relacionados por la propiedad de
conjunto.
MENSAJES
Una comunicación dirigida a un objeto, que le ordena que ejecute uno de
sus métodos con ciertos parámetros asociados al evento que lo generó.
7. CARACTERISTICAS (ASTRACCIÓN,
ENCAPSULAMIENTO, HERENCIAS,
POLIMORFISMO, MODULARIDAD, ETC.)
Abstracción
Denota las características esenciales de un objeto,
donde se capturan sus comportamientos. Cada
objeto en el sistema sirve como modelo de un
"agente" .
permitan modelar la realidad o el problema que se
quiere atacar.
Encapsulamiento
Significa reunir todos los elementos que pueden
considerarse pertenecientes a una misma entidad,
al mismo nivel de abstracción. Esto permite
aumentar la cohesión (diseño estructurado) de los
componentes del sistema. Algunos autores
confunden este concepto con el principio de
ocultación, principalmente porque se suelen
emplear conjuntamente.
8. Herencia
Las clases no se encuentran aisladas, sino que se
relacionan entre sí, formando una jerarquía de
clasificación.
Polimorfismo
Comportamientos diferentes, asociados a
objetos distintos, pueden compartir el mismo
nombre; al llamarlos por ese nombre se
utilizará el comportamiento correspondiente
al objeto que se esté usando.
Modularidad
Se denomina "modularidad" a la propiedad que
permite subdividir una aplicación en partes
más pequeñas (llamadas módulos), cada una
de las cuales debe ser tan independiente
como sea posible de la aplicación en sí y de las
restantes partes.
9. RESUMEN
La POO es un paradigma surgido en los años 1970, que utiliza
objetos como elementos fundamentales en la construcción de la
solución. Un objeto es una abstracción de algún hecho o ente del
mundo real, con atributos que representan sus características o
propiedades, y métodos que emulan su comportamiento o
actividad. Todas las propiedades y métodos comunes a los objetos
se encapsulan o agrupan en clases. Una clase es una plantilla, un
prototipo para crear objetos; en general, se dice que cada objeto es
una instancia o ejemplar de una clase.
Algunos lenguajes orientados a objetos.
Simula (1967) es aceptado como el primer lenguaje que posee las
características principales de un lenguaje orientado a objetos. Fue
creado para hacer programas de simulación, en donde los
"objetos" son la representación de la información más importante.
Smalltalk (1972 a 1980) es posiblemente el ejemplo canónico, y con
el que gran parte de la teoría de la programación orientada a
objetos se ha desarrollado.
10. CONCLUSIONES
La programación orientada a objetos permite la optimización
del código generado gracias a que mediante técnicas de
herencia, atributos estáticos entre otros permiten, que el
código sea genérico de manera que sea reutilizable.
Mediante la técnica aprendida en el presente curso podemos
establecer una solución primitiva de un problema real, tan solo
con relacionarlo con objetos lógicos que serán usados para el
desarrollo del software.
Podemos dar a conocer de una forma sencilla los mecanismos
que se usan en este nivel de programación, a personas que
deseen una explicación rápida y sencilla de lo que es la
programación orientada a objetos.
Tenemos los conocimientos necesarios como para enfrentar un
problema real y desarrollo en otro lenguaje de programación,
pues concedimos la idea de que el lenguaje C es la base de la
programación.