# data[].attributes.body
La Programación Orientada a Objetos es modelo o un estilo de programación. Se basa en el concepto de clases y objetos. Este tipo de programación se utiliza para estructurar un programa de software en piezas simples y reutilizables de planos de código (clases) para crear instancias individuales de objetos.

# data[].attributes.body
Es nombre del espacio donde podremos definir nuestro atributos y métodos es decir desde aquí definiremos que clase de objetos vamos crear

# data[].attributes.body
Los atributos son los datos y características que definen a nuestro objeto o clase, los cuáles podremos definir mediante variables.

# data[].attributes.body
los métodos o funciones son las acciones que dicho objeto puede realizar, es decir, la manera en la que puede comportarse o interactuar con el.

# data[].attributes.attachment_link.title
10 - Explicación de programación orientada a objetos (clases, métodos, atributos y objetos)

# data[].attributes.attachment_caption
Aquí tenemos una clase música y depende de como la vallamos a utilizar sus atributos y métodos cambian 

# data[].attributes.body
La abstracción se refiere a la capacidad de representar la información que es importante para el contexto del problema.

# data[].attributes.attachment_caption
En este ejemplo atacar y moverse solo se habilitaran cuando sea nuestro turno, hasta ese momento los métodos atacar y moverse están encapsulados 

# data[].attributes.body
La encapsulación se refiere a proteger o privar el acceso a los atributos o métodos de nuestro objeto para que no puedan ser alterados desde fuera, de manera que no se altere su comportamiento interno. La única forma en la que este se puede modificar es mediante los propios métodos del objeto.

# data[].attributes.attachment_caption
La clase personaje hereda a dos nuevas clases lógicamente parecidas y estas además también crean sus métodos propios.

# data[].attributes.body
La herencia es el pilar que nos facilita el proceso al crear nuevas clases, ya que teniendo una clase "base" podemos hacer uso tanto de los atributos como los métodos de esta para crear una nueva que los heredará y también tendrá los suyos propios.

A la clase que hereda se le conoce como clase padre o superclase, y a la clase heredada como clase hija o subclase.

# data[].attributes.body
permite a un método heredado funcionar de manera diferente dependiendo de la clase que lo esté utilizando. Si no utilizáramos el polimorfismo por herencia tendríamos que hacer una función diferente por cada clase.

# data[].attributes.attachment_link.title
¿Qué es la programacion orientada a objetos? - La mejor explicación en español

# data[].attributes.attachment_link.title
Los 4 PRINCIPIOS de la PROGRAMACIÓN ORIENTADA A OBJETOS

# data[].attributes.body
Para seguir aprendiendo sobre este estilo de programación.

ver mas

# data[].attributes.body
1) con la abstracción construimos sistemas mas complejos de una forma mas organizada.

2)evitamos duplicar código.

3)la información es protegida por medio del encapsulamiento.

4)Evita la duplicación de código.

5)Agiliza el desarrollo de software.

como estos se presentan mas, lo que lo consolida como un estilo de programación muy eficiente para proyectos complejos.