PassFront
  1. PassFront
  2. База знаний
  3. Классы

Что такое SOLID?

Классы

SOLID — это пять принципов объектно-ориентированного проектирования, которые помогают писать гибкий, поддерживаемый и расширяемый код.

Пять принципов

  • S — Single Responsibility (единственная ответственность): у класса/модуля должна быть одна причина для изменения.
  • O — Open/Closed (открытость/закрытость): код открыт для расширения, закрыт для модификации — новую логику добавляют, не переписывая старую.
  • L — Liskov Substitution (подстановка Барбары Лисков): подтип должен подставляться вместо базового типа без нарушения поведения.
  • I — Interface Segregation (разделение интерфейсов): много узких интерфейсов лучше одного большого; клиент не должен зависеть от методов, которые не использует.
  • D — Dependency Inversion (инверсия зависимостей): модули зависят от абстракций, а не от конкретных реализаций.

Пример SRP

// Плохо: класс и хранит, и логирует, и шлёт email
// Хорошо: UserRepository, Logger, Mailer — раздельно

Зачем это на фронтенде

  • Компоненты с одной ответственностью проще тестировать и переиспользовать.
  • DI-инверсия — основа внедрения сервисов и моков в тестах.

Коротко для собеседования

SOLID: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion. Цель — снизить связанность и упростить расширение и тестирование кода.

Другие вопросы раздела