Tout d'abord, désolé si je ne poste pas au bon endroit. En essayant d'apprendre à me servir de la librairie Dagger2, et de l'injection de dépendance en général, j'en suis rapidement venu à créer le morceau de code suivant en Java, destiné à l'origine à être traduit en Dagger2.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
public class App {
    public static void main(String[] args) {
        Game gamesList[] = new Game[]{new KeydonGong("Lolo"), new XofTsar("Toto"), new XofTsar("Lolo"), new KeydonGong("Tartempion")};
        for (Game currentGame : gamesList) currentGame.play();
    }
}
On remarque donc que c'est un simple cas de Polymorphisme.
  1. Est-ce un morceau de code "éligible" pour de l'injection de dépendance ? A la fois au niveau utilité, et au niveau réalisation technique. (Est-ce que le but de l'injection de dépendance est d'enlever en quelque sortes les appels à "new" dans le code métier/client ?)
  2. Si oui, comment essayer de traduire cela en utilisant Dagger2, sachant que chaque instance de KeydonGong ou XofTsar prend un nom de joueur en paramètre ?