J'ai récemment essayé d'apprendre les principes de conception de base et l'OCP m'a un peu confus. Il est logique que lorsqu'un changement se produit, il est préférable d'étendre le système plutôt que de modifier les parties existantes et fonctionnelles. Mais n'est-ce pas plus un principe sur la façon de mettre en œuvre des changements dans un système plutôt que sur la façon d'en concevoir un? Tout le code n'est-il pas fondamentalement ouvert à l'extension en utilisant le sous-classement? Et comment tout code peut-il être fermé pour modification? Cela ne dépend-il pas simplement de la façon dont la personne qui met en œuvre un changement choisit de l'utiliser? Peut-être un exemple de code qui ne suit pas l'OCP et comment exactement il a violé le principe serait le plus utile pour moi de le comprendre.Comment écrire du code conforme à l'OCP?
Merci
Heh. Je ne l'ai jamais entendu appelé "l'OCP" auparavant. Cela ressemble à une chanson de rap: "Votre programme est-il en baisse avec le O.C.P.?". – Ken