Link Search Menu Expand Document

Une application propre, mais à l’ancienne

Ce que vous trouverez sur La branche master : les vielles bonnes pratiques

(Merci Cyrille et Arnauld !)

Principes

  • Des services façades
  • Des packages par couche.
  • Drivé par un model CRUD, on savait que c’était des bdd derrière. Il va peut-être falloir apprendre à s’en abstraire.

L’idée c’est que ça devait ressembler à un monolithe de PME bien écrit.

Mais c’est déjà un peu plus :

  • Seul ce ce qui a une implémentation qui peut dépendre de la technologie a une interface pour injection
    • les services n’ont pas d’interface car n’ont que du code métier (pas d’IoC via DI du coup)
  • Pas d’attribut en type primitif mais des value objects
  • Approche tests first
    • Il n’y que les tests qui fonctionnent, pas possible de lancer l’application.
    • Pas de test sur les get des Optional (car pas les tests écrits).

Une fois cela fait, l’objectif a été de refactorer cela en deux modules pour deux hexagones.