Программные сущности (модули, классы, функции и т.д.) должны быть открыты для расширения, но закрыты для изменения (Бертранд Мэер) «Открыты для расширения», означает, что любой класс, метод, блок программного кода должен быть открыт для добавления нового функционала «Закрыты для изменения»: для добавления нового функционала в сущность, не должны вноситься изменения в код, который эту сущность использует. …
Читать далее «SOLID принципы: OCP (Открытости/закрытости (Open Closed Principle)»