Size: a a a

Dart & Flutter по-русски

2020 June 17

И

Игорь in Dart & Flutter по-русски
/stat@combot
источник

C

Combot in Dart & Flutter по-русски
Total messages: 213539
источник

П

Павел in Dart & Flutter по-русски
Юрий
А данные из него нужно будет передавать в парент?
я везде использую Get.It . Сразу в виджете получу сервис апи и отправлю запрос
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
Павел
я везде использую Get.It . Сразу в виджете получу сервис апи и отправлю запрос
Не хочу тебя разочаровывать, но GetIt - это просто синглтон, который регистрирует другие синглтоны. Так сказать, глобальный менеджер синглтонов.
О недостатках синглтонов много написано.
В общем, не самый это лучший подход.
источник

DK

Danial Kolyasnikov in Dart & Flutter по-русски
Хорошо, мне нужен какой-нибудь курс на каком-нибудь онлайн сервисе, после которого у меня будет красивая картинка на которой будет написано, что я молодец и прошел курс.
Было бы круто узнать что-то полезное и поменять отношение с bloc.
Может кто-то сможет что-то посоветовать ?
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
Danial Kolyasnikov
Хорошо, мне нужен какой-нибудь курс на каком-нибудь онлайн сервисе, после которого у меня будет красивая картинка на которой будет написано, что я молодец и прошел курс.
Было бы круто узнать что-то полезное и поменять отношение с bloc.
Может кто-то сможет что-то посоветовать ?
Ну ты же всё сам знаешь, и ещё постебаться решил - зачем тогда советов просишь?
источник

П

Павел in Dart & Flutter по-русски
Sergey Molchanovsky
Не хочу тебя разочаровывать, но GetIt - это просто синглтон, который регистрирует другие синглтоны. Так сказать, глобальный менеджер синглтонов.
О недостатках синглтонов много написано.
В общем, не самый это лучший подход.
Общие фразы. Может крашнуться аппа? Я им подключаю сторы mobx
источник

DK

Danial Kolyasnikov in Dart & Flutter по-русски
Sergey Molchanovsky
Ну ты же всё сам знаешь, и ещё постебаться решил - зачем тогда советов просишь?
Читал реквест ?
источник

DK

Danial Kolyasnikov in Dart & Flutter по-русски
Я ж там не написал, что мне нужен мега-полный курс. Я говорю, что мне нужен курс с сертом.
источник

ND

Nikita Domnickij in Dart & Flutter по-русски
Sergey Molchanovsky
Не хочу тебя разочаровывать, но GetIt - это просто синглтон, который регистрирует другие синглтоны. Так сказать, глобальный менеджер синглтонов.
О недостатках синглтонов много написано.
В общем, не самый это лучший подход.
нет
источник

DK

Danial Kolyasnikov in Dart & Flutter по-русски
И если уж выкидывать деньги, то было бы круто найти что-то полезное .
источник

П

Павел in Dart & Flutter по-русски
вот и я не пойму, что плохого. Я использую его по назначению) Мне надо иметь один объект апи сервис-провайдера делать запросы
источник

ND

Nikita Domnickij in Dart & Flutter по-русски
Павел
вот и я не пойму, что плохого. Я использую его по назначению) Мне надо иметь один объект апи сервис-провайдера делать запросы
человеку просто мозг жмёт, как недавно выяснилось
источник

П

Павел in Dart & Flutter по-русски
подозреваю, что люди иногда не понимают, что виджеты тупо перерисовываются. И где тогда брать необходимые редкие объекты?
источник

П

Павел in Dart & Flutter по-русски
Кто-то порекомендует Provider ))) Оно чем то отличается? в плане доставки мне объекта по дереву
источник

SM

Sergey Molchanovsky in Dart & Flutter по-русски
Что нет?
Потрудитесь излагать мысли развернуто
источник

DK

Danial Kolyasnikov in Dart & Flutter по-русски
Sergey Molchanovsky
Что нет?
Потрудитесь излагать мысли развернуто
GetIt - реализует шаблон ServiceLocaltor.
источник

ND

Nikita Domnickij in Dart & Flutter по-русски
Переслано от Evgenii <JonFir&g...
там немного другая разница. Провайдер тоже управляет жизненным циклом объекта, он собственно для того и нужен, что бы это бойлерплейт сократить. Но основные фишки провайдера какие?
* он встраивается в дерево виджетов
* как и инхерит умеет обновлять стейт который использует watch 
* имеет виджеты билдеры, которые умеют обновляться когда значение в провайдере обновляется

по сути это все сахарок, и сокращалка бойлерплейта, а так инхерит может тоже самое

А что get_it

это типичный IoC контейнер, сервис локатор.
* оторван от конекста, что позволяет в нем регистрировать обмалютно любые зависимости
* имеет более гибкие настройки жизненного цикла (синглтон, фабричный метод, время ижзни равное графу)
* позволяет регистрировать/отменять регистрацию зависмостей на ходу, что иногда полезно, что бы подменять зависмости

Лично я у себя использую провайдер для того что бы пробрасывать элементы сквозь дерево (наапример стейт экрана во все его виджеты) что бы не пробрасывать их через конструкторы. Это конечно тоже плохо ибо не явно, но в целом сокращает бойлерплейт и флаттер вей

для доменной части приложения я сначала замутил гет ит, но понял что менеджить его супер боль. и на это есть причины:
* все зависмости передаются не явно, ты не можешь сказать какой класс от какого зависит, из этого приходится постоянно лазить по коду и смотреть глазами
* он не может автоматом разрешить асинхронный граф, что есть если класс завсит от другого что регистрируется асинхронно, тебе надо это руками указать, и вот приходится следить за зависмостями, способом их инфицализации, потом не забывать прописывать правильную последовательность инициализации

Короче я подмал и решил, мне не нужен мехаизм контейнра, то есть не надо регать зависмости на лету и отменять их регистрацию, а жизнейнный цикл и так просто написать.

В итоге я просто написал несколько фабрик, обьеденил их либу, и все, кастомый DI - причем именно DI. с внедрением зависимостей через конструкторы, явно, тут не запутаешься, не сможешь заинится класс раньше чем его завимость, это проверяется компилятором + нет либы от которой надо читать документацию)
источник

ND

Nikita Domnickij in Dart & Flutter по-русски
Sergey Molchanovsky
Что нет?
Потрудитесь излагать мысли развернуто
патерны изучи для начала, менеджер синглтонов
источник

П

Павел in Dart & Flutter по-русски
Я читал механизмы правильного старта GetIt . И там прекрасно указывались зависимости
источник