Hoy en día, frameworks como Symfony o Laravel trabajan para que sus componentes sean lo más desacoplados que sea posible, y pueda reemplazarse la implementación de ciertas clases por otra. Logrando así un código más escalable y flexible. Para ello, ambos frameworks se apoyan muchísimo en el patrón de inyección de dependencias. Este patron es tan importante, que hemos dedicado toda la parte 2 de nuestro curso de creación de componentes para PHP y Laravel, a hablar de él, incluso ¡Estamos creando nuestro propio contenedor de inyección de dependencias!

Con el patrón de inyección de dependencias, los objetos, de los cuales una clase depende, son inyectados a través del constructor o de métodos setters. Pero no todas las clases dependen únicamente de otras clases, muchas veces, por ejemplo, cuando utilizamos una clase para conectarnos a una base de datos o API, esta necesita de valores escalares, como pueden ser las cadenas para conectarse a una URL o host, un nombre de usuario y una clave.

El día de hoy implementaremos este feature dentro de nuestro contenedor, mientras aprendemos más sobre el uso de Reflection en PHP.

Regístrate en Styde

y obtén acceso inmediato a cientos de lecciones como ésta y contenido nuevo cada semana.

Ver planes

Lección anterior Creación y uso de excepciones personalizadas con PHP y PHPUnit Lección siguiente El patrón ¿o anti patrón? Singleton