Chaque principe de conception abordé dans ce chapitre — SRP, OCP, DRY, haute cohésion, faible couplage — peut finalement être réduit à deux propriétés mesurables d'un module : la cohésion et le couplage. La cohésion mesure le degré de relation entre les éléments d’un module. Le couplage mesure le degré de dépendance d'un module par rapport à un autre. L’objectif, énoncé par Larry Constantine dans les années 1960 et répété depuis par toutes les grandes autorités en matière d’ingénierie logicielle, est de maximiser la cohésion et de minimiser le couplage. Cette leçon précise ces concepts, classe leurs types, vous donne des outils pour les mesurer et montre comment les utiliser comme instrument de navigation lors du refactoring.

La cohésion et le couplage ne sont pas des propriétés binaires : ils existent sur des spectres. Un module n'est pas simplement « cohésif » ou « non cohésif » ; il a un niveau de cohésion allant de fortuit (le pire) à fonctionnel (le meilleur). Comprendre le spectre est ce qui vous permet de prioriser les efforts de refactoring : tout ne vaut pas la peine d'être réparé, mais savoir où vous vous situez sur l'échelle vous indique le coût.
Full content is available with a subscription.
Get full access to all courses on the platform for one year with a single payment.
Unlike other platforms that charge per course, here you get everything for one price, and after one year of use there will be no automatic charge for the following year.