Встречается на 2% собеседований по JavaScript
Что такое Service Locator
Service Locator — это паттерн проектирования, предоставляющий глобальную точку доступа к сервисам без жесткой привязки к их реализации. В отличие от Dependency Injection, где зависимости явно передаются, Service Locator сам управляет их созданием и поиском.
typescript
class ServiceLocator {
private services: Record<string, any> = {};
register(name: string, service: any) {
this.services[name] = service;
}
get<T>(name: string): T {
return this.services[name];
}
}
const locator = new ServiceLocator();
locator.register('logger', console);
const logger = locator.get<Console>('logger');
logger.log('Hello from Service Locator');
text
**Плюсы:**
- Гибкость в замене реализаций
- Централизованное управление сервисами
**Минусы:**
- Скрытые зависимости (усложняет тестирование)
- Нарушает принцип инверсии зависимостей
Часто используется в legacy-коде, но в современных приложениях предпочтительнее Dependency Injection.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы