Este documento resume los principales conceptos de la programación orientada a objetos (POO), incluyendo clases, características como encapsulamiento, herencia y polimorfismo. Explica que la POO se basa en objetos y clases, y que el encapsulamiento oculta los datos miembros de un objeto. También define la herencia como la capacidad de una clase para extender la funcionalidad de otra clase, y el polimorfismo como la habilidad de responder de manera igual a mensajes para objetos de diferentes tipos.
3. Introducción y Clases
La Programación Orientada a Objetos es un
paradigma de programación que parte del
concepto de "objetos" como base.
Los conceptos centrales son el de objeto y
el de clase, por lo que es importante
entender el papel que desempeña cada uno.
Que es POO?
5. Ejemplos
}
Clases y Objetos
Encapsulamiento
Se denomina encapsulamiento al
ocultamiento del estado, es decir, en
el caso de la POO de los
datos miembro de un objeto de manera
que solo se pueda cambiar mediante las
operaciones
definidas para ese objeto.
Es la unidad en un programa de computadores
que consta de un estado y de un
comportamiento, que a su vez
constan respectivamente de datos almacenados
y de tareas
realizables durante el tiempo de ejecución.
(Albert Gavarró Rodríguez )
6. Ejemplos
Herencia
Polifirsmo
Es un mecanismo en clases, donde una clase se
deriva de otra de manera que extiende su
funcionalidad. Los objetos heredan las
propiedades y el comportamiento de todas las
clases a las que pertenecen
la propiedad por la que es posible enviar
mensajes sintácticamente iguales a objetos de
tipos distintos. El único requisito que deben
cumplir los objetos que se utilizan de manera
polimórfica es saber responder al mensaje que
se les envía.
7. Abstracción
Modularidad
La abstracción consiste en aislar un
elemento de su contextos que lo acompañan.
El proceso de abstracción permite
seleccionar las características relevantes
dentro de un conjunto e identificar
comportamientos comunes para definir nuevos
tipos de entidades en el mundo real.
Ea la propiedad que permite subdividir
una aplicación en partes más
pequeñas llamadas módulos. Estos módulos
se pueden compilar por
separado, pero tienen conexiones con
otros módulos, (Román Martínez, Elda
Quiroga, 2002).