Les architectures modulaires

dépendances explicites

L’organisation modulaire permet de bien expliciter les dépendances et les limites des codes qui constituent l’application. Les descripteurs module-info permettent au compilateur et à l’exécuteur de savoir quelles sont les dépendances et si les codes décrits par ces dépendances sont bien présents.

Cela permet entre autres choses:

  • De réaliser des livraisons de code réduites au strict nécessaire (sans associer des codes inutiles)
  • De vérifier rapidement à l’exécution la situation des codes demandés.

graphe modules

dépendances dynamiques

images/bluebelt.png

Dans certains cas les modules de l’application peuvent être demandeur de codes comme des "services" dont la réalisation n’est pas forcément connue au moment de la compilation. Ces codes sont ajoutés ultérieurement par exemple parce que ce sont des codes de configuration et/ou des codes qui permettent de réaliser concrètement un service comme la rémanence de données (base de données par ex.) ou des codes qui constituent une option d’enrichissement de l’application (choix d’un nouvel algorithme).

graphe modules services

Nous verrons ultérieurement dans le chapitre "modularité avancée" des organisations plus complexes (strates et conteneurs)

--exercices--