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 ne peut être modifiée que par extension.

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 beaucoup changer la classe mais seulement l'étendre.

En pratique, le principe ouvert/fermé fait bon usage de l'abstraction et du polymorphisme.