Встречается на собеседованиях • сегодня
Какие принципы SOLID применял на практике
**Single Responsibility Principle (SRP)**
Использовал при разделении компонентов: например, компонент `UserProfile` отвечает только за отображение данных пользователя, а `UserProfileEditor` – за их редактирование.
**Open-Closed Principle (OCP)**
Применял при создании расширяемых компонентов. Например, базовый `Button` с пропсами для кастомизации, но без модификации исходного кода.
**Liskov Substitution Principle (LSP)**
Соблюдал при наследовании: если родительский компонент `Modal` принимает пропс `onClose`, то и дочерний `ConfirmModal` должен его поддерживать.
**Interface Segregation Principle (ISP)**
Разделял большие интерфейсы. Например, вместо общего `UserAPI` создал `UserReader` и `UserWriter` для чтения/записи данных.
**Dependency Inversion Principle (DIP)**
Внедрял зависимости через пропсы (React) или DI (Angular). Например, передача `httpClient` в компонент, а не импорт напрямую.
```tsx
// Пример DIP в React
const UserList = ({ apiClient }: { apiClient: ApiClient }) => {
const [users, setUsers] = useState([]);
useEffect(() => { apiClient.fetchUsers().then(setUsers); }, []);
return
- {users.map(user =>
- {user.name} )}

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