Principe ouvert/fermé
Un article de Wikipédia, l'encyclopédie libre.
En programmation orientée objet, le principe ouvert/fermé affirme qu'une classe doit être à la fois ouverte et fermée. Ouverte signifie qu'elle a la capacité à être étendue. Fermée signifie qu'elle peut être modifiée par extension, sans modification de son code source.
L'idée est qu'une fois qu'une classe a été approuvée via des revues de code, des tests unitaires et d'autres procédures de qualifications, vous ne voulez pas changer la classe mais seulement l'étendre.
En pratique, le principe ouvert/fermé fait bon usage de l'abstraction et du polymorphisme.