Встречается на собеседованиях • сегодня
Для чего используется SOLID
SOLID — это набор принципов объектно-ориентированного проектирования, которые помогают создавать гибкий, поддерживаемый и масштабируемый код:
- Single Responsibility — класс должен иметь одну причину для изменения.
- Open-Closed — классы должны быть открыты для расширения, но закрыты для модификации.
- Liskov Substitution — подклассы должны заменять базовые классы без изменения поведения.
- Interface Segregation — лучше много узких интерфейсов, чем один универсальный.
- Dependency Inversion — зависимости должны строиться на абстракциях, а не на конкретных классах.
Пример нарушения и исправления SRP:
java
// Плохо: класс и логирует, и сохраняет
class UserService {
void saveUser(User user) {
// сохранение
System.out.println("User saved"); // логирование
}
}
// Хорошо: разделение ответственности
class UserRepository {
void save(User user) { /* сохранение */ }
}
class Logger {
void log(String message) { /* логирование */ }
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы