# data[].attributes.headline
Qué es la Programación Orientada a Objetos

# data[].attributes.subject
Qué es la Programación Orientada a Objetos

# data[].attributes.body
La Programación Orientada a Objetos (POO) es un paradigma de programación, es decir, un modelo o un estilo de programación que nos da unas guías sobre cómo trabajar con él. 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
¿Cómo se crean los programas orientados a objetos? Resumiendo mucho, consistiría en hacer clases y crear objetos a partir de estas clases. Las clases forman el modelo a partir del que se estructuran los datos y los comportamientos.

El primer y más importante concepto de la POO es la distinción entre clase y objeto.

Una clase es una plantilla. Define de manera genérica cómo van a ser los objetos de un determinado tipo. Por ejemplo, una clase para representar a animales puede llamarse ‘animal’ y tener una serie de atributos, como ‘nombre’ o ‘edad’ (que normalmente son propiedades), y una serie con los comportamientos que estos pueden tener, como caminar o comer, y que a su vez se implementan como métodos de la clase (funciones).

Un ejemplo sencillo de un objeto, como decíamos antes, podría ser un animal. Un animal tiene una edad, por lo que creamos un nuevo atributo de ‘edad’ y, además, puede envejecer, por lo que definimos un nuevo método. Datos y lógica. Esto es lo que se define en muchos programas como la definición de una clase, que es la definición global y genérica de muchos objetos.

# data[].attributes.headline
Beneficios de Programación Orientada a Objetos

# data[].attributes.subject
Beneficios de Programación Orientada a Objetos

# data[].attributes.body
Reutilización del código.

Convierte cosas complejas en estructuras simples reproducibles.

Evita la duplicación de código.

Permite trabajar en equipo gracias al encapsulamiento ya que minimiza la posibilidad de duplicar funciones cuando varias personas trabajan sobre un mismo objeto al mismo tiempo.

Al estar la clase bien estructurada permite la corrección de errores en varios lugares del código.

Protege la información a través de la encapsulación, ya que solo se puede acceder a los datos del objeto a través de propiedades y métodos privados.

La abstracción nos permite construir sistemas más complejos y de una forma más sencilla y organizada.

# data[].attributes.attachment_link.title
Programación Orientada a Objetos en Java