OOP

y antes ¿Qué había?

para eso tengo que hablar de la evolución de los lenguajes de programación en cuanto a ...

La tecnología

los Lenguajes Ensambladores o de "bajo nivel"

aparece entonces el biestado (cero o uno)

y qué hacía?

transcribe palabras fáciles de recordar a secuencias de ceros y unos y que si son entendibles por la máquina

pero era muy complicado

detectar errores era casi imposible y la portabilidad imposible

porqué? pues por que sólo funcionaban en la maquina en que se programaban

Lenguajes de "alto nivel"

son más rápidos y simples

por ende más facil de detectar errores

perfectos entonces lenguajes?

NO, cada máquina tiene un dialecto del lenguaje distinto a los demás , osea la portabilidad es imposible nuevamente.

La conceptualización

Programación Lineal

cada linea debe ser precedida de un identificador para referenciarla

las instrucciones se ejecutan en el mismo orden en que las escribamos

Programación Estructurada

concepto de "función"

procesos repetitivos que trato como un subprograma que llamo cada vez que lo necesito

Programación Orientada al Objeto

antes el programador controlaba y mantenía en su mente cada proceso

en OOP el programa se controla a sí mismo

Al enfoque

Procedual

se establecen hechos, reglas para el manejo de los datos y se debe decirle al lenguaje cómo alcanzar el objeto

Declarativa

manipulaciones lógicas (lógica proposicional)

Orientada al Objeto

es casi 100% procedural y no es en absoluto declarativa

¿Qué es?

Es un modelo de programación informática que organiza el diseño de software en torno a datos u objetos, en lugar de funciones y lógica.

Conceptos básicos

Clase

abstracción que hacemos de nuestra experiencia sencible

agrupamos objetos con características similares

Objeto

Conjunto de datos y métodos

Herencia

métodos propios diferentes al resto de las clases

Polimorfismo

cualidad que poseen los objetos para responder de distinto modo ante el mismo ensaje