Una de las ventajas que ofrece PHP desde su versión 5.0 es la capacidad de utilizar completamente el paradigma de programación que se conoce como Programación Orientada a Objetos (POO de ahora en adelante). POO utiliza “objetos” estructuras de datos que consisten en propiedades y métodos. Este paradigma intenta representar las partes de una aplicación y/o la aplicación completa de una forma más humana.
Componentes pilares de la POO.
Para entender la POO es necesario dominar los siguientes conceptos.
Objeto. Se refiere comúnmente a atributos (elementos) y comportamientos (métodos) encapsulados en una entidad. Son un método natural para implementar estructuras de datos abstractos, trayendo “físicamente” componentes de datos con procedimientos para luego manipularlos. Todo objeto tiene estado, exhibe un comportamiento bien definido y posee identidad única.
Clase. Es un tipo de dato definido por el programador que determina las estructuras de datos que lo forman y las funciones asociadas con él, es decir es un modelo con el que se construyen los objetos.
Se define como el constructor utilizado como “plano” para crear un Objeto. Describe el estado y el comportamiento del objeto creado. Un objeto creado por una Clase es una instancia de la clase y la clase que creó esa instancia es considerado como el tipo del objeto. Un ejemplo de un objeto creado por una clase “fruta” sería “piña”, otro “pera” y así sucesivamente. Es la abstracción de un concepto.
Instancia. Se crea cuando una construye un objeto. Las instancias de una clase comparten los mismo atributos pero pueden diferir en qué los atributos contengan. Por ejemplo una clase “Persona” describe los atributos comunes de una persona; cada persona es generalmente parecida, pero varía en atributos como “altura” y “peso”. La clase listaría tipos de atributos, así como también las acciones que una persona podría realizar: “saltar”, “caminar”, “andar”, “comer”. La instancia es el objeto creado en tiempo de corrida de una aplicación. Otro ejemplo sería: “Lassie” es una instancia de la clase “Perro” y así también “Pluto” sería otra instancia de la misma clase.
(seguir leyendo…)