23.02.2017 Views

Java

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Java</strong> 235<br />

concepto para tratar los frameworks de inyección de dependencia<br />

o de configuración de objetos. Como ya dijimos la inyección de<br />

dependencias trata sobre cómo configurar los colaboradores de un<br />

objeto. Esto lo debemos hacer aunque no utilicemos un framework<br />

específicamente para esto. Lo que necesitamos es uno o más objetos<br />

que se encarguen de crear las dependencias, crear el objeto que nos<br />

interesa y enlazarlos. Los frameworks de inyección de dependencias<br />

no solamente manejan la creación y configuración de los objetos<br />

y sus dependencias, sino que agregan más<br />

funcionalidades que permiten establecer cuándo<br />

y cómo se deben crear o, si es posible, reusar<br />

instancias para no crear objetos costosos de más.<br />

Hay que considerar que no todos los<br />

colaboradores deben ser externalizados.<br />

Solamente deberíamos tener como dependencias<br />

a aquellos colaboradores que existan como<br />

concepto fuera del objeto y que no están atados<br />

al ciclo de vida de este último. Por ejemplo el<br />

mes de febrero existe como objeto más allá de<br />

consideremos<br />

que no todos los<br />

colaboradores<br />

deben ser<br />

externalizados<br />

si es colaborador para la fecha 15 de febrero de 2009. En cambio, una<br />

colección para guardar los elementos que componen una figura debería<br />

permanecer oculta dentro del objeto figura, ya que es un detalle de<br />

implementación que no le interesa a un cliente.<br />

A continuación podremos ver cómo serían ambos ejemplos en<br />

código. Primero, en el caso donde el colaborador es externo y no<br />

depende de nuestro objeto para existir.<br />

El objeto que se encarga de representar al mes existe mas allá de que<br />

sea o no utilizado para un fecha en particular. En un segundo caso el<br />

colaborador solo existe mientras existe su contenedor.<br />

Martin Fowler<br />

Martin Fowler es un famoso orador sobre patrones de diseños y arquitectura. En su sitio, encontraremos<br />

muchos artículos interesantes. Entre ellos un análisis de los frameworks de inyección de dependencias<br />

e inversión de control. Lo podemos ver en http://martinfowler.com/articles/injection.html, el<br />

sitio tiene varios ejemplos sobre la filosofía de los principales frameworks.<br />

www.FreeLibros.me<br />

www.redusers.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!