Patrones de diseño en PHP

¿Qué es un Patrón de Diseño?

Los patrones de diseño, nos brindan una solución a problemas comunes a la hora de diseñar software que ya están probados y documentados.

Hay que decir, que muchas veces, usamos algún patrón a la hora de diseñar software sin apenas darnos cuenta, ya que en ocasiones cualquier programador, se pone a programar sin pensar que patrón tiene que aplicar a un problema.

No es obligatorio siempre aplicar un patrón a la hora de diseñar software, esto depende de la necesidad, ya que en ocasiones, algo no es de tanta envergadura como para aplicar un tipo de diseño específico, pero sí que nos pueden ayudar a salir de una «encerrona» cuando nos quedamos bloqueados a la hora de nuestro desarrollo de software.

A la hora de aplicar un patrón, debemos analizar la situación en la que estamos y tener en cuenta tres cosas básicas:

1 – El problema que tenemos.

2 – Cuando aplicar un patrón.

3 – Que patrón elegir.

Muchos CMS, implementan patrones de diseño muy conocidos, Prestashop, o algunos Frameworks PHP, están muy enfocados a MVC.

Otros patrones conocidos y que también se usan bastante, pueden ser el Factory que como su nombre indica es una fábrica de instancias, objetos, etc…

El patrón Singleton, se utiliza para crear una sola instancia. Este por ejemplo, lo podemos usar para asegurarnos de que solo existe una conexión a una base de datos desde una clase.

A día de hoy,estos son los patrones de diseño que más he utilizado, pero existen muchos más. Como curiosidad, en github, hay un proyecto donde hay un montón de patrones explicados en PHP, es algo que me llamo mucho la  atención y que me gustaría compartir. Dejo el link a continuación.

https://github.com/domnikl/DesignPatternsPHP

Este chico, se ha currado un montón de ejemplos programados y muy bien documentados en PHP.

También tenemos que comentar, que existen los «anti-patrones» de diseño, pero de eso ya hablaremos otro día.

Un saludo – Juanan Vicent 😉