6. Aplicabilidad

Hemos identificado patrones, les hemos ofrecido pequeñas descripciones y amenas motivaciones.  Sin embargo, es necesario saber donde y cuando utilizarlos.

Los catálogos nos pueden guiar hacia el patrón, pero es la sección de aplicabilidad la que dice la última palabra con respecto a si tal o cual patrón nos sirve para nuestros propósitos específicos.


Utilice el patrón Observador en cualquiera de las siguientes situaciones:

El identificar estas situaciones requiere de maestría y de experiencia.  En general no es cualquiera quien puede dar estos puntos de vista sobre un patrón, debe ser aquel que lo hizo en primera instancia, y aquellos que trataron de utilizarlo en diversas oportunidades.

Sin embargo, esta definición podría no ser completa.  Es probable que uno requiera algo que se parece a un Observador, pero que se conozca que el Observador no funciona bien bajo las condiciones existentes dentro del problema que se desea solucionar.  Luego, el Observador actuaría como un Antipatrón en tales circunstancias, pero en general el Observador no es un Antipatrón, porque los Antipatrones tienen fallas en general.  Una posibilidad es indicar, dentro del apartado de Aplicabilidad o Aplicación que el patrón no sirve para tales casos, o simplemente no tener un catálogo separado de Antipatrones, sino definir un atributo que diga que el patrón es un Patrón si... y es un Antipatrón si... (esto ya es una modificación de la teoría original, pero podría ser una mejora funcional del modelo).

Lo que se haría es recorrer los patrones por nombre, por descripción, por aplicabilidad, y mediante el atributo de antipatronicidad.

Esto es algo muy importante, ya que nos indica que podemos ajustar el modelo de lo que es un Patrón para que cumpla nuestras necesidades lo mejor posible.



  1