Зачем паттерн одиночка?

Зачем паттерн одиночка, я не понимаю вообще, если можно создавать статические классы то тогда зачем паттерн одиночка?
  • Вопрос задан
  • 93 просмотра
Пригласить эксперта
Ответы на вопрос 4
Jacen11
@Jacen11
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
Этот паттерн нужен для тех языков где нет специальных возможностей для сингл-тонизации. Например в Java это всегда реализуется через статичное поле или метод в любом классе.

В Scala есть object - это уже готовый синглтон из коробки поэтому необходимости в следовании паттерну уже вроде как нет.
Ответ написан
Adamos
@Adamos
Например, статический класс может требовать тяжелой инициализации.
У одиночки она произойдет только при первом вызове.
Одиночка позволяет аккуратно создать глобально доступный статический объект, причем только в том случае и тогда, когда он действительно понадобился.
Есть вариант, что данные для самого создания одиночки появляются по мере работы кода, заранее его создать просто не получится.
Ну, и во-первых, это красиво :)
Ответ написан
Комментировать
DollyPapper
@DollyPapper
Разница в том, что одичка создает объект который доступен в единственном экземпляре в системе. А статические классы это не объекты, это классы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы