Si vous aviez un collègue qui ne comprenait pas les avantages de la séparation des préoccupations ou ne le comprenait pas assez pour s'appliquer de manière cohérente dans son travail quotidien, comment pourriez-vous lui expliquer cela?
Imaginez que vous ayez un programme qui a été publié. Un client arrive et vous propose de vous payer une amélioration de l'une de ses fonctionnalités. Afin d'obtenir de l'argent, vous devrez modifier votre programme pour ajouter la nouvelle fonctionnalité. Certaines des choses qui influeront sur votre marge bénéficiaire sont:
La séparation des préoccupations vous aide à obtenir des réponses plus positives à ces questions.
Regardez un hôpital et pensez à tous les différents rôles impliqués dans la prestation des soins à un patient: infirmières de triage, médecins, assistants médicaux, techniciens, personnel de bureau, cafétéria, etc.
Y a-t-il une personne qui sait comment toutes ces personnes font leur travail? Non, car ce serait écrasant. Ils doivent séparer les différentes responsabilités en rôles distincts et les points de contact entre ces rôles sont très spécifiques.
S'il travaille dans un bureau, prenez-le comme exemple, expliquez le rôle de chaque membre du personnel dans ce bureau et demandez-lui ce qui se passerait si ces membres du personnel n'étaient pas répartis en fonction de leur travail?
Je regarderais comment il n'a pas réussi à appliquer le SoC dans son code/conception et en ferais un exemple réel avec lequel il peut se rapporter et qui n'est évidemment pas souhaité.
Par exemple, s'il a une classe où le client doit fournir plusieurs informations qui ne sont pas pertinentes pour ces clients, j'utiliserais l'analogie d'une boulangerie où vous devez apporter vos propres céréales et levures si vous voulez acheter un pain.