🕹️ Композиция против Наследования:
Проводится аналогия между тем, как в Тетрисе составляются фигуры, чтобы создать линии, и тем, как объекты комбинируются в разработке программного обеспечения.
Объясняется, как композиция способствует гибкости и модульности, в то время как наследование может привести к Проблеме Хрупкого Базового Класса и сильной связанности.
🔧 Принцип Одной Ответственности (SRP):
В статье подчеркивается важность SRP в создании меньших, поддерживаемых единиц кода.
Утверждается, что разделение кода не должно зависеть исключительно от композиции, а скорее от соблюдения SRP, что делает код более переиспользуемым и поддерживаемым.
💉 Внедрение Зависимостей:
Вместо использования наследования для переиспользования кода предлагается использовать внедрение зависимостей и композицию.
Используя композицию, разработчики могут сократить влияние изменений и избежать Проблемы Хрупкого Базового Класса.
🌟 Принципы SOLID:
Тут также кратко затрагиваются принципы SOLID, упоминая Принцип Одной Ответственности и Внедрение Зависимостей, и намекают на то, что они будут рассмотрены более подробно в будущем контенте.
👀 Взгляд на Наследование:
Хотя здесь советуют предпочитать композицию перед наследованием по причинам, упомянутым выше, она также признает, что не все наследование плохо.
Разработчики должны учитывать, когда наследование может быть уместным, и предоставляет точку зрения Матиаса Верраса на определение эвристик для его использования.
Post #4201
3.24K