Встречается на собеседованиях • сегодня

Сколько ответственностей у Singleton

Singleton нарушает принцип единственной ответственности (SRP), так как совмещает две:

  1. Управление своим жизненным циклом (контроль создания экземпляра)
  2. Основную бизнес-логику, для которой он создан

Пример:

java
class DatabaseConnection {
    private static DatabaseConnection instance;
    
    private DatabaseConnection() {}
    
    public static DatabaseConnection getInstance() {
        if (instance == null) {
            instance = new DatabaseConnection();
        }
        return instance;
    }
    
    // Основная бизнес-логика
    public void connect() { /*...*/ }
}

Здесь класс отвечает и за контроль экземпляра, и за работу с БД. Для соблюдения SRP лучше вынести управление экземпляром в отдельный класс.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы