SOLID - это аббревиатура от 5 важных принципов проектирования при объектно-ориентированном программировании (ООП):

  • S Принцип ответственности
  • O Принцип закрытости ручки
  • Л Исков Принцип замещения
  • I Принцип разделения интерфейса
  • D принцип инверсии зависимости

Эти принципы предназначены для того, чтобы сделать проекты программного обеспечения более понятными, более простыми в обслуживании и расширении.

Принцип единой ответственности. В нем говорится, что каждый модуль или класс должен нести ответственность за отдельную часть функциональности, предоставляемой программным обеспечением. Другими словами, у класса должна быть одна и только одна причина для изменения, а это означает, что у класса должна быть только одна работа.

Принцип открытости-закрытости. Это означает, что программные объекты (классы, модули, функции и т. Д.) Должны быть открыты для расширений, но закрыты для модификации. Если у вас есть общее представление об ООП, вы, вероятно, уже знаете о полиморфизме. Мы можем убедиться, что наш код соответствует принципу открытости / закрытости, используя наследование и / или реализуя интерфейсы, которые позволяют классам полиморфно заменять друг друга.

Принцип замещения Лискова. Этот, вероятно, самый сложный, чтобы осознать, когда его впервые представляют. В нем указано, что если S является подтипом T, то объекты типа T может быть заменен (или заменен) объектами типа S. Другими словами, каждый подкласс / производный класс должен заменять свой базовый / родительский класс.

Принцип разделения интерфейса. Фактически, если вы привыкли использовать интерфейсы, скорее всего, вы уже применяете этот принцип. В нем говорится, что ни один клиент не должен зависеть от методов, которые он не использует. Не добавляйте дополнительные функции к существующему интерфейсу, добавляя новые методы. Вместо этого создайте новый интерфейс и позвольте вашему классу реализовать несколько интерфейсов, если это необходимо.

Принцип инверсии зависимостей. Это способ разделения программных модулей.
Этот принцип гласит:

  • Модули высокого уровня не должны зависеть от модулей низкого уровня. Оба должны зависеть от абстракций.
  • Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций.

Заключение

Поначалу SOLID может показаться горсткой, но при постоянном использовании и соблюдении его рекомендаций он становится частью вас и вашего кода, который можно легко расширять, изменять, тестировать и реорганизовать без каких-либо дополнительных затрат. проблемы.

Применяя эти 5 принципов, составляющих аббревиатуру SOLID, мы получаем выгоду от многократно используемой, обслуживаемой, масштабируемой и легко тестируемой базы кода.
Это 5 основных принципов, используемых профессиональными инженерами-программистами повсюду. земного шара, и если вы серьезно относитесь к созданию программного обеспечения SOLID, вам также следует начать применять эти принципы.

С помощью: