11

4 Elementos y pilares básicos de la Programación Orientada a Objetos POO

La programación orientada a objetos es un paradigma que se creó para resolver los inconvenientes de la programación estructurada:

  • Código muy largo, lo cual hace que sea difícil de mantener, depurar y comprender con el tiempo.
  • Los errores generados debido a la forma secuencial en la que funciona la programación estructurada, donde si una linea dejara de funcionar, el resto del código también lo haría.

Un paradigma es una teoría que suministra la base y el modelo para resolver problemas y la POO se compone de los siguientes 4 elementos:

  1. Clases: Las clases pueden ser definidas como un molde que contendrá todas las características y acciones con las cuales podemos construir N cantidad de objetos.
  2. Propiedades: Las propiedades son las características de una clase, tomando como ejemplo la clase humanos, las propiedades podrían ser: nombre, el género, la altura, color de cabello, color de piel, etc.
  3. Métodos: Los métodos son las acciones que una clase puede realizar, siguiendo el mismo ejemplo anterior, estas podrían ser: caminar, comer, dormir, soñar, respirar, nadar, etc.
  4. Objetos: Son aquellos que tienen propiedades y comportamientos, estos pueden ser físicos o conceptuales.
    Técnicamente, los objetos son instancias de una clase, vendría siendo cuando ya le colocamos un “nombre” a nuestras clases (moldes). Por ejemplo: El objeto “Arnell”, quien es una instancia de la clase humanos.

Y los siguientes 4 pilares:

  1. Abstracción: Es cuando separamos los datos de un objeto para luego generar un molde (una clase).
  2. Encapsulamiento: Lo puedes utilizar cuando deseas que ciertos métodos o propiedades sean inviolables o inalterables.

Un ejemplo del encapsulamiento podría ser una cuenta de banco, donde el usuario no puede simplemente aumentar su balance de dinero, si no que debe depender de unos métodos previamente validados para aumentar dicho balance (depósitos, transferencias, etc).

  1. Herencia: Nos permite crear nuevas clases a partir de otras. Si tuviéramos una clase “Autos” y quisiéramos crear unas clases “Auto deportivo” o “Auto clásico”, podríamos tomar varias propiedades y métodos de la clase “Autos”. Esto nos da una jerarquía de padre e hijo.
  2. Polimorfismo: Proviene de Poli = muchas, morfismo = formas. Se utiliza para crear métodos con el mismo nombre pero con diferente comportamiento.

Tomando el mismo ejemplo de la cuenta bancaria, se podría ejemplificar al validar el monto máximo de transferencia al día. Donde una cuenta personal podría transferirse máximo 500$ al día y a una cuenta empresarial 1500$.

En este caso, tendríamos la clase padre cuentaBancaria y las clases hijo CuentaPersonal y CuentaBancaria. Ambos tienen el método validarTransferenciaMáxima, pero este debe ser modificado para permitir realizar la validación de transferencia máxima por tipo de cuenta.

Con esto, tenemos las bases de la POO, solo es cuestión de práctica y podrás adoptar esta filosofía en tu día a día. Y recuerda, “don’t repeat yourself”

Escribe tu comentario
+ 2
2

Hola se que ha pasado tiempo, puedo sugerir una edición respectó a la enumeración sobre los cuatro pilares fundamentales.
Puede que suene quisquilloso, ya que es solo sobre la enumeración de los cuatro pilares fundamentales. El markdown se esta saltando la enumeración. ;D