Bonjour tout le monde,
Je me posai une petite question, pourquoi se prendre la tête avec Spring ou Google Guice ou autre quand on peux faire ça:
Parce que ça fait plusieurs jours que je galère a essayer de comprendre comment utiliser ces saleté de frameworks inbittables, avec des tutos écrits par des gars qui ont pas l'air d'avoir eu-même pas bien compris de quoi ils parlaient, et là je me rend compte qu'on peut faire la même chose en 1000x plus simple en écrivant une classe de 20 lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 package dependences; import java.io.File; import java.util.ArrayList; import java.util.Hashtable; import java.util.Scanner; public class Injector { private Hashtable<String, Object> classList = new Hashtable<String, Object>(); public Object get(String string){ return classList.get(string); } @SuppressWarnings("resource") public Injector(String configFileName){ try { Scanner scanner = new Scanner(new File(configFileName)); ArrayList<String> namesList = new ArrayList<String>(); while(scanner.hasNext()){ namesList.add(scanner.next()); } for(String string : namesList){ Object object = Class.forName(string).newInstance(); String[] name = object.getClass().getInterfaces()[0].getName().split("\\."); classList.put(name[name.length-1], object); } } catch(Exception e) { e.printStackTrace(); } } }
Alors il doit bien y avoir un truc que j'ai pas compris, ou que je ne connais pas parce que je ne peux pas avoir fait mieux que des millions d'ingénieurs qui ont travaillés sur le sujet pendant des années.
C'est pas possible.
Du coup merci de m'apporter vos lumières.
Partager