2009-11-05 15 views
33

Non sono sicuro se ci sia o meno merito a questa domanda, ma ci sono delle best practice e degli anti-pattern specifici per Google Guice?Migliori pratiche e anti-pattern di Guice

Si prega di indirizzare qualsiasi modello DI generico a this question.

+0

Incoraggerei chiunque fosse interessato a contribuire a questa domanda per verificare invece gli argomenti [Guice docs] (http://stackoverflow.com/documentation/guice/topics). – dimo414

risposta

11

Ce ne sono alcuni nella pagina del progetto Guice. Ecco un collegamento allo first one e puoi vedere gli altri nella barra laterale.

Detto questo, penso che sarebbe bello vedere gli altri pubblicati e votati qui. Quindi possiamo scrivere il meglio di loro per le pagine di Guice.

+0

Quindi ... vota per favore :) – ripper234

30

Ho sempre pensato che l'iniezione del costruttore nei campi finali sia una buona pratica. Riduce al minimo lo stato mutabile e facilita la comprensione della classe rendendo esplicite le dipendenze formali della classe.

public class MyClass { 
    private final MyDependency dependency; 

    @Inject 
    public MyClass(MyDependency dependency) { 
     this.dependency = dependency; 
    } 
} 
+0

E se abbiamo decine di dipendenze? Il costruttore sarebbe terribile – jilen

+7

avere dozzine di dipendenze su una singola classe è probabilmente una buona indicazione che la classe è responsabile di troppo e dovrebbe essere refactored. –

+0

Se pensi di scrivere un test unitario, questa è sicuramente la strada da percorrere! – Kurru