Встречается на собеседованиях • сегодня
Какие знаешь принципы программирования
SOLID — основные принципы ООП:
- **S**ingle Responsibility (единственная ответственность)
- **O**pen-Closed (открытость для расширения, закрытость для изменений)
- **L**iskov Substitution (подстановки Барбары Лисков)
- **I**nterface Segregation (разделение интерфейсов)
- **D**ependency Inversion (инверсия зависимостей)
Пример нарушения **SRP**:
```java
class User {
void saveToDatabase() { /*...*/ } // смешивает логику и хранение
}
```
DRY (Don't Repeat Yourself) — избегай дублирования кода.
KISS (Keep It Simple, Stupid) — простота лучше сложности.
YAGNI (You Aren't Gonna Need It) — не добавляй функциональность "на будущее".
Пример **DRY**:
```java
// Плохо:
void printUser(User u) { System.out.println(u.getName()); }
void printAdmin(Admin a) { System.out.println(a.getName()); }
// Лучше:
void print(T entity) { System.out.println(entity.getName()); }
```

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы