27 abril 2006

Inyección de dependencias

Un artículo muy interesante que no me he podido resistir a publicar en algún sitio (y como sólo tengo este blogcito, pues aquí va). Trata varios temas sobre diseño de capas de objetos: como desacoplarlas disminuyendo las dependencias de cada objeto, usando interfaces y pasando desde fuera los objetos que las cumplan, ya sea en el constructor o estableciendo una propiedad pública. Así permite el desarrollo de componentes opcionales, librerías para distintos departamentos, etc. Esto lo tendremos en cuenta cuando tengamos terminado nuestro Sota 1.0 para evolucionarlo en dirección a Motorwin.
Pero es que el artículo, además de esto, hace hincapié en los diseños MVC (Model - View - Controller) y MVP (Model - View - Presenter), los cuales se ven muy favorecidos de la Dependency Injection.
Y para colmo habla de las pruebas unitarias usando objetos Mock: objetos simulacro que tienen la interfaz del objeto real pero que simulan comportamientos determinados (por ejemplo, fallos en la base de datos).