Couplage et cohésion

Mesurer et juger les dépendances : les types de couplage entre modules, le couplage entrant et sortant, l'instabilité, et les niveaux de cohésion à l'intérieur d'un module, de coïncidente à fonctionnelle.

  • 26 cartes
  • 7 thèmes
  • Gratuit

Le programme, thème par thème

Le poids de chaque thème suit celui que lui donne l'examen.

  1. Notions
  2. Questions
  3. Ranger et relier
  4. Sur la frise
  5. Les chiffres
  6. Mises en situation
  7. Comprendre

Quelques cartes du deck

  • Couplage : de quoi s'agit-il ?

    Voir la réponse

    Degré de dépendance entre deux modules : plus l'un connaît le fonctionnement interne de l'autre, plus une modification de l'un force à retoucher l'autre.

    On vise un faible niveau : des modules qui ne se connaissent que par une interface étroite et stable se modifient et se testent séparément.

  • De quel type de couplage relève cet appel entre deux modules ?

    ```java
    void afficher(String message, boolean enMajuscules) {
    if (enMajuscules) { System.out.println(message.toUpperCase()); }
    else { System.out.println(message); }
    }

    afficher("bonjour", true);
    `

    • Couplage de contrôle : le drapeau choisit la branche exécutée
    • Couplage de données : seules des valeurs simples sont passées
    • Couplage de contenu : l'appelant modifie les données de l'autre module
    • Couplage global : les deux modules partagent une variable
    Voir la réponse

    Couplage de contrôle : le drapeau choisit la branche exécutée

    Le booléen ne transporte pas une donnée à traiter : il commande le comportement de afficher, donc l'appelant doit connaître son fonctionnement interne. Deux méthodes distinctes ou un paramètre de stratégie réduisent ce couplage.

  • On cherche un couplage … entre les modules et une cohésion … à l'intérieur de chacun.

    Voir la réponse

    On cherche un couplage faible entre les modules et une cohésion forte à l'intérieur de chacun.

    Les deux vont ensemble : des modules qui regroupent ce qui change ensemble ont moins besoin de se connaître.

  • Cohésion : de quoi s'agit-il ?

    Voir la réponse

    Degré auquel les éléments d'un module (méthodes, champs) servent une même responsabilité et vont ensemble.

    On vise un niveau élevé : un module dont les éléments n'ont rien à voir entre eux est difficile à nommer, à comprendre et à réutiliser.