Встречается на собеседованиях • сегодня
Какие знаешь принципы проектирования
SOLID — основные принципы ООП:
- Single Responsibility — класс должен иметь одну причину для изменения.
- Open/Closed — классы должны быть открыты для расширения, но закрыты для модификации.
- Liskov Substitution — подклассы должны заменять базовые классы без ошибок.
- Interface Segregation — много специализированных интерфейсов лучше одного общего.
- Dependency Inversion — зависимости должны строиться на абстракциях, а не на деталях.
DRY (Don’t Repeat Yourself) — избегай дублирования кода.
KISS (Keep It Simple, Stupid) — простота важнее избыточной сложности.
YAGNI (You Aren’t Gonna Need It) — не добавляй функциональность «на будущее».
Пример SOLID (TypeScript):
typescript
// Принцип открытости/закрытости
interface Shape {
area(): number;
}
class Circle implements Shape {
constructor(private radius: number) {}
area() { return Math.PI * this.radius ** 2; }
}
class Square implements Shape {
constructor(private side: number) {}
area() { return this.side ** 2; }
}
// Новые фигуры можно добавлять, не меняя существующий код
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы