Что такое Singleton и зачем он нужен? Singleton - это шаблон проектирования. Представляет собой класс, у которого будет гарантированно только один экземпляр и доступ к этому экземпляру из любого места в коде. С помощью сингельтона делают, например, логгирование или репозитарии с данными - это когда вам требуется общее хранилище данных для нескольких экранов (нескольких bloc'ов). Настройки приложения очень удобно так хранить. Во Flutter пример сингельтона - это WidgetsBinding.instance. В общем это удобный шаблон, которым без затей пользуются программисты всего мира и мы с вами тоже начнём. Как сделать Singelton на Dart? Приватный конструктор класса Первое, что нам нужно сделать - это чтобы нельзя было создавать экземпляры класса. Делаем приватный конструктор, на Dart это можно сделать поставив нижнее подчеркивание перед конструктором: Отличненько! Правда мы теперь не можем создавать экземпляры... Создаем instance нашего Singelton'а Объявляем статическую переменную instance, в которой и