Встречается на собеседованиях • сегодня
Почему иногда Singleton это плохо
Singleton может быть плохим выбором по нескольким причинам:
- Глобальное состояние - усложняет тестирование, так как состояние сохраняется между тестами
- Нарушение SRP - часто становится "god object", накапливая слишком много логики
- Проблемы с многопоточностью - требует аккуратной реализации в concurrent среде
- Жёсткая связность - усложняет модификацию и расширение кода
Пример плохого Singleton:
java
public class BadSingleton {
private static BadSingleton instance;
public String state; // Плохо: изменяемое состояние
private BadSingleton() {}
public static synchronized BadSingleton getInstance() {
if (instance == null) {
instance = new BadSingleton();
}
return instance;
}
}Лучше использовать DI или фабрики там, где это возможно. Singleton оправдан только для действительно уникальных ресурсов (например, connection pool).

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