← Devlog

09 janvier 2026 - Container IoC

Principe SOLID

Première implémentation du container IoC.

Grâce à Claude et les reflections de Gemini, je parviens à une première structure, pas de cache possible car la partie Providers est encore assez brouillons et contient des closures.

Dans première temps, j'expérimente afin de voir si c'est fonctionnel. Mais ce n'est pas suffisant, je vais maintenant prendre le temps de comprendre chaque détail.

Analyse de l'implémentation

Le container

Service Locator: anti-pattern?

Je constate que le Container s'auto-enregistre. Il y a un risque de dérive ici, utiliser le container comme Service Locator partout (anti-pattern).

Dans le code actuellement seule le Dispatcher à besoin de cette fonctionnalité.

Je vais ici décider de passer par un Factory Pattern et instaurer une règle: Si une classe a besoin de créer quelque chose dynamiquement, on lui donne une Factory, jamais le Container.

Ce qui me permet de retirer l'auto-enregistrement dans le constructeur du Container.

Providers

Cette partie n'est pas vraiment finie, c'est un simple fichier de script et l'utilisation abusive des closures rend le cache inutilisables pour le Container.


Je continue l'analyse afin de corriger un peu le tir.