Qué es Programación Orientada a Objetos

↑ Me gusta (0)

Es difícil decir de primera algo que sea fácil de entender cuando hablamos de este tema, si estás aquí es porque ya conoces de que trata y buscas aclarar tu panorama y posibles dudas. Te puedo comentar que gracias a esta forma de escribir código conseguimos un proyecto mucho mas organizado y muy fácil de mantener.

Aclaremos lo siguiente: La programación orientada a objetos es una forma de programar, un paradigma o una técnica. Lo que aquí aprenderás te servirá mucho así no trabajes con PHP, sin embargo, toma en cuenta que los ejercicios se harán en PHP.

A continuación la clave:

  • Programación orientada a objetos: Es la técnica.
  • PHP: Es el Lenguaje de programación (donde implementamos la técnica).

En esta serie quiero aclarar los conceptos que hacen que este paradigma sea algo enredado, se trata de abstracción, herencia y otros términos.

Para programar de esta forma en realidad debemos crear objetos, y un objeto es una instancia de una clase y una clase es el molde, ejemplo:

  1. Clase User.php.

  2. Objeto 1: $user1 = new User;

  3. Objeto 2: $user2 = new User;

Su estructura inicial es así, nuestra clase es una sola y a partir de ella podré crear uno o muchos objetos.

¿PHP es un lenguaje orientado a objetos?

La respuesta es SI, con PHP contamos con todo lo que se requiere; podemos por supuesto crear clases, objetos, estos por supuesto pueden heredar y mantener una comunicación.

Cuando hablamos de paradigma nos referimos a "modelo", "forma" o "ejemplo", con esto queremos decir que para hacer una acción se toma como modelo o ejemplo otra ya establecida. En otras palabras, tenemos el paradigma de programación estructurada o el paradigma de la programación orientada a objetos.

Esto es importante mencionarlo porque existen diferentes paradigmas y aquí puedes ampliar esa información.

Existen muchos paradigma pero hablemos de programación estructurada y programación orientada a objetos.

  1. Programación estructurada: Es lo que aprendemos en la universidad en la materia lógica de programación, computación 1, etc... Se trata de programar mediante rutinas básicas como if, switch, for, while, etc. (crearé un curso sobre esto para que todos pasen esa materia con éxito).
  2. Programación Orientada a Objetos: Cómo ya mencionamos está basada en varios conceptos: herencia, abstracción, polimorfismo y otras. Todo esto lo veremos en esta serie. Esto no es nuevo, desde la década de 1990 se viene usando este paradigma.

Con PHP podemos trabajar con ambos paradigmas... ¿es un lenguaje estructurado? SI, ¿es un lenguaje orientado a objetos? SI, también lo es.

La mala fama que alguna vez tubo PHP y que aún mantiene "un poco" se debe precisamente a que muchas personas creaban un index.php, dentro tenían mucho código estructurado y buscaban trabajo como programador. Su misma flexibilidad ayudó a que sea el lenguaje mas usado en el mundo y al mismo tiempo se ganó esa mala fama.

Pero vamos poco a poco ayudando a que trabajemos mejor. Yo enseñando hago mi parte y tu haces la tuya aprendiendo. ¡Somos un buen equipo!.

Entonces, PHP al permitir clases, herencia, objetos y todo lo mencionado anteriormente lo convierte en un lenguaje orientado a objetos.

Antes de continuar te comento que es recomendable estudiar nuestra serie PHP para principiantes, podría decirse que esta serie es la continuación de PHP para principiantes.

Tenemos elementos fundamentales, esto es en realidad lo que vamos a aprender en esta serie, aclaremos todo al respecto:

  1. Abstracción.
  2. Encapsulamiento.
  3. Modularidad.
  4. Herencia.
  5. Polimorfismo.

Te invito a seguir este material de cerca.

Aquí verás los conceptos de programación orientada a objetos.