¡Esta es una revisión vieja del documento!


10.4 Inyección de dependencias

La inyección de dependencias (en inglés Dependency Injection, DI) es un patrón de diseño sencillo de usar aunque quizás resulte algo muy novedoso para algunas personas.

La DI intenta resolver el problema que hay en el código del ejemplo de JSON de hace 2 temas:

public class Main {
 
 
    public static void main(String[] args) {
        JsonTransformer jsonTransformer=new JsonTransformerImplJackson();
         
        Usuario usuario=new Usuario("Alberto Tortosa","alberto_tortosa@gmail.com",91);
         
        String jsonUsuario=jsonTransformer.toJson(usuario);
         
        System.out.println(jsonUsuario);
         
         
        Usuario newUsuario=(Usuario) jsonTransformer.fromJson(jsonUsuario, Usuario.class);
           
        System.out.println("Nombre:"+newUsuario.getNombre());
        System.out.println("E-Mail:"+newUsuario.getEmail());
        System.out.println("Edad:"+newUsuario.getEdad());
         
    }
     
}

¿Cual es el problema que hay en ese código? ¡Si lo hicimos muy bien añadiendo el interfaz para abstraernos de saber nada de Jackson! Pero , ¿Seguro que no sabemos nada de Jackson? Si te fijas en la línea 5 verás que aparece la palabra “Jackson” en la clase JsonTransformerImplJackson.

El problema es que tenemos dentro del código la implementación que usamos del interfaz y si usamos el interfaz para no saber nada sobre su implementación es un sin sentido que tengamos en el propio código una referencia a la implementación.

unidades/10_servidor/04_inyecciondependencias.1409435262.txt.gz · Última modificación: 2014/08/30 23:47 por admin
Ir hasta arriba
CC Attribution-Share Alike 3.0 Unported
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0