Como te mencionaba en el anterior artículo lo que necesitas para aprender un framework PHP, conocer la programación orientada a objetos es fundamental sobre todo si queremos adentrarnos al mundo de los frameworks ya que en su mayoría (por no decir todos) mantienen ese tipo de estructura y en este artículo te voy a explicar lo fundamental de la programación orientada a objetos (POO) que desde luego lo trabajaremos con PHP.
Básicamente la POO es un estilo de programación empleado que usan los objetos en sus interacciones para el desarrollo de aplicaciones, este utiliza varias técnicas como ser la herencia, abstracción, polimorfismo y el encapsulamiento que son los pilares para resolver problemas en base a este paradigma.
Para no entrar tanto en teoría te lo explico en un ejemplo para comprender mejor la POO, supongamos que nos encontramos en un restaurante el cual desde luego tiene platillos, nos vamos a enfocar en ellos, entonces si nos ponemos a clasificar esta información tendríamos una clasificación platillo y estos van a tener comportamientos que pueden ser servidos, vendidos, reservados y a la vez también tendrán sus características como ser su porción, precio, cantidad, etc. En este restaurante existirán variedad de platillos que pueden ser mariscos, ensaladas, pastas, postres pero al final todos llegaran a ser un platillo mas del restaurante.
Si este ejemplo lo trasladamos a lo que es la POO podemos rescatar varios conceptos:
Primeramente hablamos de clasificar, la clasificación es una forma de ordenar la información dicho esto obtuvimos una clasificación platillo que en POO llegaría a ser una clase platillo, esta clase estará compuesto de atributos que son las características del platillo que como mencionamos son la porción, precio y cantidad, también compone los métodos que llegan a ser los comportamientos es decir ser servidos, vendidos, reservados.
En base a todo lo anterior podemos crear un objeto que es una instancia real de lo que definimos como clase (platillo) por ejemplo podemos crear el objeto lazaña al crear este objeto podemos hacer uso tanto de los atributos como de los métodos de la clase platillo.
Otra parte importante es el encapsulamiento que es la forma de tener una información especifica guardada en una clase que solo se las llamaran a las instancias de los métodos requeridos.
Dentro las clases hay otros aspectos importantes a tomar en cuenta como ser la forma en que creamos los atributos y los métodos ya que estos pueden ser públicos o privados, la diferencia está que cuando creamos un método privado este solo estará disponible dentro del ambiente de la clase en cambio si lo definimos como publico entonces ese elemento puede trabajar fuera de la clase y lo mismo pasa con los atributos.
Y listo! básicamente es lo fundamental que tienes que saber de la POO, ahora pasaré mostrarte todo lo dicho anteriormente en PHP:
[php]
<?php
//Creamos nuestra primera clase
class platillo
{
private $nombre;
private $precio;
public $cantidad;
public function vender()
{
//Desarrollo del método vender
}
public function reservar()
{
//Desarrollo del método reservar
}
}
//Creamos nuestra primera instancia de la clase
$lazania = new platillo();
$lazania->vender();
?>
[/php]
Lo que hice fue crear una clase platillo y dentro de ella se encuentran tres atributos dos de ellos privados que son el nombre y precio recuerda que cuando se crea un atributo como private este solo trabaja dentro de la clase, después tenemos un atributo publico que es cantidad el cual este puede trabajar fuera de la clase, posteriormente se crearon dos métodos públicos como ser vender() lo cual dentro de este método pondremos todo el código necesario como puede ser también consultas a las bases de datos que serán específicamente para vender los platillos, lo propio ocurre para el método publico reservar().
Después se creó una primera instancia a la clase platillo donde $lazania es el objeto que se crea y con new platillo estamos llamando a la clase platillo. Con la ultima linea se esta llamando con el objeto $lazania al método vender() lo cual realizara todo lo que contenga este método que se encuentra dentro de la clase platillo.
Como te habrás dado cuenta esto mantiene mas modularizado nuestro código ya que así como creamos una clase platillo, podemos crear otras clases como ser comensales, meseros, administradores y de esa manera tendremos clasificado y ordenado cada una de las funcionalidades del restaurante.
Para finalizar solo me queda decirte que todo lo que te explique son las bases que necesitas para comprender la POO después esta en ti el ponerle mucha practica y veras que así te darás cuenta que es mucho mas fácil de lo que pensábamos.
Y dime tu que opinas de la POO, que te parece la forma en que trabaja este paradigma? puedes dejar un comentario y si piensas que el articulo te fue de ayuda compártelo en las redes sociales.
Saludos!

increible lo sencillo q lo explica y muy claro muchas gracias inge esto me ayudara mucho en mi proyecto tukako miles de gracias nuevamente y godbay
Gracias ti por comentar 8-) . Saludos!!!
Bien explicado, conciso y claro.
ahora pasare a ver tus videos de php en youtube :)
saludos
Hola Ricardo, gracias por el comentario y si, puedes ver todo el contenido del Curso de CakePHP tanto en el Blog como en mi canal de Youtube. Saludos
Excelente explicación.
Gracias.