Modules Java 9 et Architecture hexagonale
Dans la continuité des deux dernières jams de code sur la nouvelle fonctionnalité Java 9 de modules, nous vous proposerons de refactorer un code à l’ancienne, mais néanmoins propre et couvert par des tests, en deux sous-domaines hexagonaux, l’idée étant d’utiliser les modules java 9 pour marquer les frontières entre les sous-domaines.
(Merci Arnaud et Ludo !)
Si vous voulez commencer par le code, il se trouve sur branche master : c’est le code sous forme de monolithe organisé en couche service / entité / repository. Plus de détail ici.
Le but est d’isoler le code de calcul des modes de transports dans un module maven à part, puis de protéger les deux module maven via des modules java 9. Dans le détail, c’est là.
Une ébauche de solution se trouve sur la branche hexagonal : c’est une première étape vers plus de modularité.
Sinon vous pouvez parcourir cette table des matières.
Quelques rappels
- Rappel : architecture hexagonale
- Rappel : DDD
- Rappel : Module et organisation équipe
- Rappel : les modules Java9 (Jigsaw)