Pilares de la POO La POO (Programación Orientada a Objetos) se basa en cuatro conceptos: Abstracción Encapsulación Herencia Polimorfismo Pilares de la P.O.O.
Download
Report
Transcript Pilares de la POO La POO (Programación Orientada a Objetos) se basa en cuatro conceptos: Abstracción Encapsulación Herencia Polimorfismo Pilares de la P.O.O.
Pilares de la POO
La POO (Programación Orientada a
Objetos) se basa en cuatro conceptos:
Abstracción
Encapsulación
Herencia
Polimorfismo
Pilares de la P.O.O.
2
Abstracción
Ignorancia selectiva
Decide que es importante y que no lo es
Se enfoca [depende] en lo que es importante
Ignora [no depende] de lo que no es
importante
Utiliza la encapsulación para reforzar la
abstracción
Facilita el manejo de la complejidad
sólo se conoce el comportamiento pero no los detalles internos
nos interesa conocer qué hace la Clase pero no saber cómo lo hace
Acelera()
velocidad
Frena()
Encapsulamiento
Herencia
Es “un tipo de” relación
◦ Relación “es un”
Entre Clases
Va de la generalización a la especialización
Clase base
Transporte
Clase derivada
Acelera
Hereda la implementación
Frena
Automóvil
Jerarquías de Clase
Transporte
Marítimo
Aire
DentroAtmosfera
Nieve
FueraAtmosfera
Tierra
1-Persona
N-Personas
Polimorfismo
Literalmente significa tomar varias formas
Tareas similares son realizadas por métodos con
mismo nombre
◦
Suma
Enteros
Decimales
Fracciones
Simplifican la tarea del desarrollador, al no tener que
recordar distintos nombres para comportamientos
iguales.
Polimorfismo
La definición del método reside en la clase base
La implementación del método reside en la clase derivada
La invocación es resuelta al momento de ejecución
◦ Early binding
◦ Late binding
Auto
Acelera
Frena
Transporte
Cohete
Acelera
Frena
Acelera
Frena
Caballo
Acelera
Frena
Resumen
1) La abstracción se usa al modelar objetos de la vida real, o no, es
un mecanismo en el cual al momento de modelar el objeto en si,
tomas solo las características y comportamientos mas
indispensables, por Ej.: todos sabemos usar un televisor y no
sabemos como funciona por dentro, para usarlo te abstraes del
comportamiento que no creas necesario.
2) El enpasulamiento se define como la acción de poner dentro de
un objeto sus atributos y métodos, mostrando luego una interfaz
común para el uso posterior del mismo, con esto, ganas que los
objetos puedan comunicarse entre ellos y que nadie se meta con la
implementación del otro. tu muestras solo los métodos que creas
necesarios para poder comunicarse con el objeto y el contrato dice
que los usuarios deben usar estos y solo estos métodos.
Resumen
3) Herencia, al igual que la vida real es el mecanismo
con el cual una clase hereda( obtiene ) de su ancestro
atributos y métodos públicos y protegidos, y lo que se
gana con esto es la reutilización de código, aunque su
poder se produce al utilizar el polimorfismo.
4) Polimorfismo, es la capacidad que tienen las
referencias de "referenciar" a objetos de distintos tipos,
pero herederos de un mismo padre, y poder realizar en
tiempo de ejecución ( ligamento tardío ), la llamada al
método correspondiente.