# data[].attributes.headline
CARACTERÍSTICAS DE LA PROGRAMACION ORIENTADA A OBJETOS (POO)

# data[].attributes.subject
CARACTERÍSTICAS DE LA PROGRAMACION ORIENTADA A OBJETOS (POO)

# data[].attributes.headline
DIAGRAMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS (POO)

# data[].attributes.subject
DIAGRAMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS (POO)

# data[].attributes.headline
PRINCIPALES LENGUAJES PARA PROGRAMACIÓN ORIENTADA A OBJETOS 

# data[].attributes.subject
PRINCIPALES LENGUAJES PARA PROGRAMACIÓN ORIENTADA A OBJETOS 

# data[].attributes.attachment_link.title
principales programas para programacion de objetos

# data[].attributes.headline
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

# data[].attributes.subject
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

# data[].attributes.attachment_link.title
y2meta_.com_ -_ Los_ 4_ PRINCIPIOS_ de_ la_ PROGRAMACIÓN_ ORIENTADA_ A_ OBJETOS-144p_

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

# data[].attributes.attachment_link.readable_text
La programación es muy extensa y existen muchas formas de programar, es tan amplia que incluso el proceso de aprendizaje podría ser confuso y frustrante.

Hablando en términos generales, a los estilos de programación se les llama paradigmas.El paradigma con el que todos aprendimos a programar es el secuencial o estructurado, aquí las instrucciones van de arriba hacia abajo, no tenemos que abstraer cosas complejas, simplemente damos ordenes una tras otra.

[ ](Qu es la programaci n orientada a objetos/Diapositiva6.png)

Cuando empiezas con proyectos más grandes te das cuenta que este paradigma no te ayuda mucho. Imagina que un cliente te pide una tienda en linea para vender zapatos:

Tienes los zapatos que tienen un precio, color, talla, marca, etc.

Necesitas un carrito que se conecte con las pasarelas de pago.

Tienes a los usuarios que van a hacer las compras.

Son muchas cosas y programar la tienda de arriba hacia abajo terminaría en un desastre, pero es la manera en la que nos enseñaron y así lo hemos hecho. Yo mismo he cometido este error y sé que mentalmente, dejar atrás este modelo de programación es muy difícil.

¿Que tienen que ver los objetos con la programación?

La programación orientada a Objetos es el paradigma más usado en el mundo. Cada uno de los elementos de la interfaz es un objeto y cada objeto tiene datos y funcionalidad.

Los zapatos son un objeto y por lo tanto tiene estas dos propiedades:

Datos: Nombre, marca, color, talla, etc.

Funcionalidad:Pueden ser agregados al carrito y pueden ser comprados.

Los usuarios también son un objeto:

Datos: Nombre, numero de tarjeta de crédito, etc.

Funcionalidad:Pueden comprar zapatos.

Lo mismo pasa con el carrito:

Datos: Zapatos agregados al carrito, usuario dueño de ese carrito, etc.

Funcionalidad:Agregar o quitar zapatos, enviar la orden a la pasarela de pago, etc.

Con la Programación Orientada a Objetos pasamos de tener un código de arriba hacia abajo en el que las funcionalidades están mezcladas y son difíciles de separar o escalar, a un sistema en el que tenemos los elementos (Objetos) separados y se comunican entre ellos:

El usuario se comunica con el producto para comprarlo.

El producto se comunica con el carrito para ser agregado.

El carrito se comunica con la pasarela de pago y con el usuario.

De esta manera es más fácil manejar y mantener un sistema, si necesitáramos una nueva funcionalidad podríamos sin problemas agregar un nuevo objeto o añadir datos y funcionalidades a los objetos que ya existen.

Atributos y métodos

Como dije antes los objetos tienen datos y funcionalidad y en la POO se les llama de esta manera:

Abstracción

En palabras simples la abstracción es pensar ¿Cuales son los atributos y métodos que necesita un objeto? Imagina que estamos programando la aplicación de cursos de EDteam y queremos crear el objeto usuarios, ¿Que atributos y métodos necesitamos?

Este es el resultado de nuestro proceso de abstracción

Clase

Las clases son plantillas que contienen la estructura básica de un objeto (Atributos y Métodos). En el ejemplo anterior donde realizamos el proceso de abstracción no creamos un objeto, en realidad creamos la plantilla en la que se basaran los objetos. Cada ves que alguien se registra en EDteam usara la clase (plantilla) para crear el objeto usuario.

Instancia

El proceso de crear un objeto a partir de una clase se llama Instanciarycada objeto creado también se le puede llamar Instancia. Con una sola clase podemos crear cientos de usuarios (Instancias) sin tener que escribir código para cada uno de ellos.

Programación Orientada Objetos en una aplicación real

El siguiente esquema representa el proceso que tiene que seguir un usuario para convertirse en un estudiante premium de EDteam.

Registro(Class Usuario)

Recogemos las propiedades del nuevo usuario (nombre, apellidos, contraseña, etc) y creamos el objeto →usuario_528

Pagar (Class Orden_de_compra)

Esta clase obtendrá las siguientes propiedades:Método de pago, id de usuario, etc y creará una instancia asociada a nuestro usuario_528 → Orden_de_compra_528

Pasar a premium(Class Premium)

La clase premium tiene como propiedades: cursos, especialidades, clases en vivo, etc.

Se crea el objeto →Premium_528 y se le asigna los beneficios al usuario_528

Como puedes ver, nuestros objetos se crearon a partir de clases ya establecidas en el sistema.

Espero que te haya gustado esta introducción a la programación orientada a objetos. Si quieres aprender más sobre este paradigma te invito a tomar nuestro curso de POO, en que aprenderás a:

✅ Comprender la programación orientada a objetos.

✅ Abstraer problemas en objetos.

✅ Aplicar este paradigma en distintos lenguajes.

👉 https://ed.team/cursos/poo

También puedes ver el video donde tratamos con más profundidad este tema

Cuéntame en los comentarios si lograste comprender que es la Programación Orientada a Objetos Nos vemos la próxima con más contenido. Chau.

# data[].attributes.attachment_link.title
¿Qué es la programación orientada a objetos?

# data[].attributes.attachment_link.description
La programación es muy extensa y existen muchas formas de programar, es tan amplia que incluso el proceso de aprendizaje podría ser confuso y frustrante. Hablando en términos generales, a los estilos de programación se les llama paradigmas.El paradigma con el que todos aprendimos a programar es el secuencial o estructurado, aquí las instrucciones van de arriba hacia abajo, no tenemos que abstraer cosas complejas, simplemente damos ordenes una tras otra.