Variaciones en la implementación del Patrón Observador

Patrones de Diseño

El Patrón Observer no solo es conocido con otros nombres como Publish-Subscribe, Dependents o incluso Event-Listener, sino que además su implementación puede variar bastante dependiendo del lenguaje de programación, framework, propósito, entorno (backend como PHP o frontend como JavaScript), entre otros.

Para finalizar esta sección quiero enseñarte algunas variaciones en la implementación de este patrón incluyendo su uso con la biblioteca estándar de PHP o SPL por sus singlas en inglés.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Aplicación del Patrón Observer

Patrones de Diseño

El Patrón Observer nos permite definir una relación o dependencia de uno a muchos entre un Sujeto y muchos Observadores. De manera de que cuando el Sujeto cambie, o se produzca un “evento” dentro de dicho Sujeto, sus Observadores sean notificados. En esta lección vamos a aplicar el Patrón Observer en el proyecto de ejemplo que hemos creado hasta ahora, para ello nos vamos a apoyar en diferentes técnicas de Refactorización y por supuesto en la prueba que hemos escrito con PHPUnit.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Patrón Observer: agregando dependencias y funcionalidad de forma directa

Patrones de Diseño
En esta segunda lección sobre el Patrón Observer, voy a escribir todo el código de ejemplo tanto en la prueba RegistrationTest como en la clase Registration, pero lo haré aún sin aplicar el patrón, de forma que podamos ver cuáles son los inconvenientes que se nos presentan al tratar de agregar funcionalidades adicionales al registro de usuarios.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Patrón Observer: Proyecto de Ejemplo

Patrones de Diseño

En ésta y las próximas lecciones del Curso de Patrones de Diseño con PHP vamos a aprender sobre el Patrón Observer. Para ello, voy a comenzar con un proyecto de ejemplo, el cual usará el código que escribí durante las lecciones del Patrón Strategy, aunque daré una pequeño resumen en caso de que no hayas visto dichas lecciones.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Aplicación del Patrón Strategy

Patrones de Diseño

El Patrón Strategy define una familia de algoritmos, encapsula cada uno y luego los hace intercambiables. Esto se logra utilizando polimorfismo y nos permite desarrollar un sistema más flexible, puesto que, por ejemplo, agregar comportamientos adicionales no requerirá cambiar clases ya existentes en el sistema. En esta lección vamos a aplicar el Patrón Strategy en nuestro ejemplo, para ello utilizaremos diversos métodos de Refactorización y nos apoyaremos en las pruebas automatizadas escritas previamente con PHPUnit.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Patrón Strategy: Agregando comportamiento adicional de manera condicional

Patrones de Diseño

En la lección anterior, creamos un pequeño ejemplo base utilizando Composer, PHPUnit y otras dependencias, en esta lección agregaremos comportamiento adicional a la clase de ejemplo (Mailer) y para ello utilizaremos condicionales, lo cual complicará el código de varias maneras que nos llevarán a visualizar porqué necesitamos aplicar refactorización y un patrón de diseño (en nuestro caso, Strategy) para solucionar los inconvenientes.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Patrón Strategy: Creación del proyecto de ejemplo

Patrones de Diseño

En esta y las próximas lecciones del Curso de Patrones de Diseño con PHP vamos a aprender sobre el Patrón Strategy. Para ello, voy a comenzar creando un nuevo proyecto demo utilizando Composer y a escribir un pequeño ejemplo de una clase para Mailer (para el envío de emails) apoyándome en PHPUnit para el desarrollo guiado por pruebas automatizadas (TDD) y en 2 dependencias para el envío de e-mails y para interactuar con la API de Mailtrap. Esta lección y la siguiente me servirán para plantear el escenario que va a requerir el uso del patrón en la tercera lección. Si solo quieres ver cómo se aplica el patrón puedes pasar a la tercera lección: Aplicación del Patrón Strategy.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Crear login personalizado en Laravel

login personalizado laravel

Laravel nos ofrece un sistema de autenticación predeterminado que podemos generar de una forma muy práctica con solo ejecutar el comando php artisan make:auth Este comando trabaja utilizando el modelo User que Laravel trae por defecto y la tabla users que puede ser generada ejecutando las migraciones que se incluyen con la instalación del framework.  Sin embargo, en ocasiones puede presentarse el caso de que un proyecto tenga una base de datos que ya se encuentre en producción o que no cumpla con la estructura que maneja Laravel por defecto.

Ver post

Extensiones de VS Code para PHP y Laravel

Extensiones de VS Code para PHP y Laravel

Visual Studio Code es un editor de código desarrollado por Microsoft con licencia MIT que últimamente se está haciendo muy popular entre las comunidades por la amplia cantidad de posibilidades que ofrece. En este artículo vamos a observar algunas extensiones muy útiles que nos ayudarán con el desarrollo en PHP y/o Laravel.

Ver post

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.