Archivos de la categoría patrones de diseño

Patrones de diseño

Patrones de diseño: patrón Singleton

CoronaEl patrón Singleton es quizás el patrón más conocido, y a la vez el más senzillo de diseñar (en mi opinión). Todo y eso, el concepto y la funcionalidad es a veces un poco complicada de entender. Esta clasificado como un patrón creacional, y es patrón que se implementa en otro patrones.

Sigue leyendo Patrones de diseño: patrón Singleton

Patrones de diseño: patrón Observador

PrismáticosEl patrón Observador es un patrón fácil de entender, y fácil de ver cuando se necesita. Esta clasificado como un patrón de comportamiento.

El contexto de este patrón es cuando tenemos varios objetos observadores y un objeto observado por los observadores. Los observadores necesitan saber cuando se produce un cambio en el objeto observado. El primer planteamiento que se puede pensar, es que haya un proceso/thread/tarea/… que se encargara de que los observadores vayan haciendo peticiones periódicamente el estado del objeto observado, para así detectar cuando sucede el cambio.

Sigue leyendo Patrones de diseño: patrón Observador

Patrones de diseño: introducción

lego piezasLos patrones de diseño son muy interesantes para los programadores, ya que nos ofrecen soluciones a problemas comunes y cuotidianos a la hora de diseñar una aplicación. Existen infinidad de casos en que el problema sigue el mismo patrón, solo cambia el contexto; un patrón de diseño te propone una solución a este tipo de problemas.

La manera de utilizarlos depende de dos factores: comprender correctamente cuando se pueden usar y tenerlos presentes a la hora de diseñar. Lo primero se consigue habiéndolos estudiado y puesto en práctica en diferentes contextos. Lo segundo, que también incluye su dificultad, es la capacidad de encontrarse con un problema, y ser capaz de relacionarlo con un patrón de diseño que conozcas.

Sigue leyendo Patrones de diseño: introducción

SOLID: los principios de la programación orientada a objetos

Figuras IsometricasEn la universidad es descubierto que existen los principios básicos de la programación orientada a objetos, llamada SOLID, que es el acrónimo de una serie de buenas prácticas:

  • SRP (The Single Responsibility Principle o Principio de Responsabilidad Única): una clase debe tener una, y solamente una, razón para cambiar.
  • OCP (The Open/Closed Principle o Principio Abierto / Cerrado): una clase debe permitir ser extendida, sin necesitar ser modificada.
  • LSP (The Liskov Substitution Principle o Principio de Sustitución de Liskov): las clases derivadas deben poder ser sustituibles por sus clases base.
  • ISP (Interface Segregation Principle o Principio de Segregación de Interfaces): hacer interfaces de grano fino que son específicos de clientes.
  • DIP (The Dependency Inversion Principle o Principio de Inversión de Dependencias): las abstracciones no deben depender de los detalles, los detalles deben depender de las abstracciones.

Sigue leyendo SOLID: los principios de la programación orientada a objetos