169 похожих чатов

Всем привет, в проекте у меня есть модель User. При

открытии приложения, если пользователь авторизуется, то получаем его id и кладем в sharedpreferences. При запуске приложения я беру этот id из sharedpreferences, если пользователь авторизован, и собираю его необходимые поля модели, создавая при этом объект класса User. Так вот, как мне сделать так, чтобы объект модели User был виден в любом файле приложения? Может создать какой-нибудь файл, где мы инициализируем объект User и импортируем его в необходимый нам файл?

13 ответов

5 просмотров

гугли паттерн синглтон

похоже что ты подошел к такому понятию как "архитектура". Я бы на твоем месте почитал хоть что-то. ходовой и несложный инструмент - например Bloc - там и инструмент + что-то типа архитектуры в примерах идет. рекомендую хотябы это

Salavat Shaykhlislamov
Я уже применял BLoC

там это называется либо user_bloc (более высокий уровень), либо - если проще user_repository. В твоем случает этот например репозиторий будет глобальным для всего приложения, и к нему везде можно получить доступ - красиво.

Salavat-Shaykhlislamov Автор вопроса

То есть мне в каждом файле придется оборачивать в bloc_builder()?

Salavat Shaykhlislamov
То есть мне в каждом файле придется оборачивать в ...

немного не так. ВОт например у тебя есть экран корзина, и на экране например также выводися имя пользователя. Тогда для этого экрана будет свой кубит cart_cubit, а уже в этот кубит ДА нужно передать (например в конструкторе) user_cubit. На следующем экране - тоже можно в кубит передать репозиторий юзера. КУбит опирается на провайдер, и для него не нужен синглтон.

Создал инхеритед виджет в него положил юзер модель

репозиторий - это хранилище, в кубите он хранит данные, а также изменят их (получить юзера/обновить/сохранить/отредактировать)

neatcoding
репозиторий - это хранилище, в кубите он хранит да...

у кубита нет стейта и он решил хранить все в репозиториях?)

Речь была про репозитори паттерн или просто какой то класс который хранит какую то дату?

Ivan Galkin
Речь была про репозитори паттерн или просто какой ...

речь про Bloc и архитектурные подходы, которые предлагают разработчики инструмента. Там специфическое определение репозитория

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Привет. Я верно понимаю, что в определении класса Монад m — зафиксирован (к тому же поскольку это моноид в категории эндофункторов). Т.е. используя байнд я не могу перемещать...
Arseny
5
еще вопрос, допустим мы создадим char массив из 10 элементов и присвоим ему через сканф 10 символов. и выведем все символы. Хотел спросить последний элемент /0 будет включать...
Anthem
11
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Карта сайта