Programación, Tutorial

POO (I): ¿Qué es una clase?

Esta serie de tutoriales sobre paradigmas de programación comienza con el más usado a día de hoy: La orientación a objetos. Este tutorial pretende enseñar a conceptualizar un objeto, y mostrar como realizar la implementación del mismo (por hacer) en el lenguaje de programación PHP.

Definiremos una clase como un molde a partir del cual creamos objetos. Estos objetos son idénticos entre si a ciertos niveles, aunque pueden tener individualidades. Para conceptualizar, vamos a ver una clase: un gato. Los gatos son, además de animales adorables y tiránicos (lo cual no nos interesa para nuestro ejemplo), seres físicos con una serie de características. De un modo muy somero, veamos unas cuantas características de la clase Gato:

  • Edad
  • Raza
  • Color
  • Peso
  • Tamaño (Cola-Hocico)
  • Nombre

A estas características, que todos los gatos comparten, pero que son individuales para cada Gato, las llamamos, en terminología de orientación a objetos PROPIEDADES.

Un Gato también hace cosas. Vamos a conceptualizar algunas de las cosas que realiza un Gato:

  • Comer
  • Cazar
  • Jugar

Estas acciones, que todos los gatos realizan, se denominan, en terminología de orientación a objetos, MÉTODOS. Un método, a diferencia de una propiedad, no es solo un valor, sino que es un acción a realizar, generalmente sobre otro objeto del mundo físico en el que habita el Gato. De un modo somero, veamos como podríamos modelar los anteriores métodos, para incluir aquello sobre lo que actúa:

  • Comer (Comida)
  • Cazar (Ratón)
  • Jugar (Gato)

A estos valores que hemos puesto entre paréntesis, los denominamos, en POO, PARÁMETROS. Como vemos, algunos de los parámetros son otros objetos, uno de ellos es un valor discreto (un número), y otro es un objeto de la clase Gato. En función de como sean esos objetos, las acciones serán realizadas de una forma u otra. Por ejemplo, un Gato no puede comer plástico, al igual que no puede cazar elefantes. Estas características, su razonamiento y especificación, reciben el nombre de análisis, mientras que la descripción, sistematización, y diseño de los objetos individuales recibe el nombre de modelado.

Como ejercicio, implementar la clase Gato en el lenguaje con paradigma POO que se prefiera, teniendo en cuenta lo siguiente:

  • Debemos modelar los objetos con los que interactúa el Gato. Estos son los siguientes, acorde al modelado de métodos que hemos realizado: Comida y Ratón.
  • No es importante, para este ejercicio, qué pase dentro del método, lo único que nos importa es que el método reciba un argumento de la clase o tipo adecuada. Por tanto, la implementación de todos los métodos consistirá en comprobar si el tipo del parámetro es el esperado, y devolver VERDADERO en ese caso, y FALSO en el contrario.
  • Escribir un programa que emplée todos los objetos modelados en el ejercicio.

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *