2008-10-09 6 views

Répondre

2

Je pense que vous devez être très prudent et attentif à ce sujet. Généralement, vous pouvez limiter les dépendances en séparant le code et en utilisant des interfaces abstraites (par exemple: des pointeurs de fonction ou un équivalent d'objet), mais la séparation ajoute généralement de la fragilité. Par exemple, vous pouvez appeler un module via une interface abstraite générique pour réduire la dépendance à l'implémentation réelle de l'objet, mais vous devez mettre à jour l'interface en synchronisation avec l'objet lui-même, sinon le code échouera au moment de l'exécution. Je dirais qu'il est important de structurer des projets volumineux dans des modules avec une hiérarchie bien définie, mais dans chaque module, il ne faut pas aller trop loin avec un code séparé pour limiter les dépendances. Si vous souhaitez améliorer la maintenance, vous devez équilibrer la réduction des dépendances avec la réduction de la fragilité du code.

6

Herb Sutter a un traitement de ce sujet précis dans des articles 26, 27 et 28, "Minimisation dépendances Compile-temps, les parties 1, 2 et 3", dans son excellent livre exceptionnel C++, ISBN: 0201615622.

alt text http://ak.buy.com/db_assets/prod_images/489/30611489.jpg

à mon humble avis, c'est l'un des meilleurs livres de programmation C++ disponible.

Questions connexes