Урок 90. Архитектуры - BLoC. Введение.

  Рет қаралды 19,491

LazyLoad Dart & Flutter

LazyLoad Dart & Flutter

2 жыл бұрын

Пожертвования - boosty.to/lazyloadflutter
Канал с анонсами в телеграм - t.me/lazyload_flutter
Группа в телеграм - t.me/learnDartFlutter
Группа в вк - club203125105
Код урока для подписчиков boosty - github.com/JonFir/lazyload_fl...
Заметка про блок - telegra.ph/Paru-slov-o-BLoC-0...

Пікірлер: 48
@Raimkhodzhanov
@Raimkhodzhanov 2 жыл бұрын
Классный урок, автору - спасибо! Не теряй мотивацию, ты лучший teacher! Кстати, я подписан, и считаю что за такой контент нужно платить.
@stanlygetz9616
@stanlygetz9616 2 жыл бұрын
Спасибо большое! Ждал объяснение BLOC именно от Вас, Евгений, так как Вы лучше всех рассказываете про Flutter!
@dan.gorbunov
@dan.gorbunov 2 жыл бұрын
Как же я люблю твои уроки
@sovrinfo
@sovrinfo 2 жыл бұрын
Евгений, большое спасибо за ваш труд!!! Коммент в поддержку!
@overlord2k4
@overlord2k4 2 жыл бұрын
Как же долго я этого ждал. Спасибо тебе за контент который ты делаешь. Просто лучший канал в ру сегменте... Всё так досканально
@RubicsGuide
@RubicsGuide 2 жыл бұрын
Спасибо за урок. Как же классно, когда человек понимает, что говорит, а не тупо рассказывает один "классический" пример, который потом хрен знает как адаптировать под другие условия.
@SviatoslavMoskva
@SviatoslavMoskva 2 жыл бұрын
Большое спасибо! Очень ждал урока про bloc
@SciNotes
@SciNotes 2 жыл бұрын
Огромное спасибо вам за то , что вы делаете !!!
@artischock
@artischock 2 жыл бұрын
премного благодарен за данный видеоматериал
@ravshan349
@ravshan349 2 жыл бұрын
good lesson!
@svetlanaia7900
@svetlanaia7900 Жыл бұрын
огромное спасибо за ваш труд! лучшие уроки!!
@KBOOMSKA
@KBOOMSKA Жыл бұрын
Прекрасный урок, спасибо Вам огромное!
@SpacePC.
@SpacePC. 2 жыл бұрын
Спасибо за урок!
@diyorjonnasriddinov
@diyorjonnasriddinov 2 жыл бұрын
thank you for lessons you are number one blogger on youtube
@GO-JS
@GO-JS 2 жыл бұрын
Супер респект за уроки.
@GO-JS
@GO-JS 2 жыл бұрын
Поддержал подпиской, главное чтобы хватало времени после 2 работ)
@nazarsorokin5665
@nazarsorokin5665 2 жыл бұрын
Спасибо за качественный контент)
@abibor
@abibor Жыл бұрын
Спасибо за уроки!
@user-od5pm7ou1f
@user-od5pm7ou1f 2 жыл бұрын
Топ!!! Спасибо, ты лучший учитель.
@user-wj6il8xo6l
@user-wj6il8xo6l Жыл бұрын
Спасибо за контент!
@IgorN1234
@IgorN1234 Жыл бұрын
Спасибо большое!
@TarasShevchenkoStep
@TarasShevchenkoStep 2 жыл бұрын
Здорово - ждем блок и кубит )
@mishakalyna
@mishakalyna 2 жыл бұрын
Thanks a lot!
@serezhka4920
@serezhka4920 2 жыл бұрын
Спасибо за урок! Для меня на данном этапе овладения флаттером, такой блок как-то проще выглядит, чем мввм. Вот блок, вот в нем всё, а в мввм куча классов дополнительных была.
@n000x
@n000x 2 жыл бұрын
Большое спасибо
@user-yo3so7ep8v
@user-yo3so7ep8v 2 жыл бұрын
отличное видео
@user-ho4cn9yp9x
@user-ho4cn9yp9x 2 жыл бұрын
Спасибо!
@user-ok6nz2mo7v
@user-ok6nz2mo7v Жыл бұрын
👍
@peekors8829
@peekors8829 2 жыл бұрын
хороший урок, запишите плз Riverpod+Hooks
@yell3137
@yell3137 2 жыл бұрын
+ за хуки
@unknownunknown17
@unknownunknown17 2 жыл бұрын
Если я правильно понял, то всё в мобильной разработке на Flutter в основе завязано на Инхеритах? Только разные методы их реализации
@LearnDartFlutter
@LearnDartFlutter 2 жыл бұрын
практически да
@ChorumTheDevourer
@ChorumTheDevourer 2 жыл бұрын
А у меня такой вопрос. Вы принципиально не пользуетесь пакетами типа freezed и json_annotation для кодогенерации или это чисто для разжевывания материалов для зрителей? С тем же блоком от Ангелова работать с помощью фризд одно удовольствие, отвлекаясь на блок с copyWith только в случае, если нужно менять маленькую часть большого стейта. Уроки отличные, просто порой некоторый оверинжиниринг вызывает недоумение.
@LearnDartFlutter
@LearnDartFlutter 2 жыл бұрын
Не принципиально, в целом фризед использовать можно
@_Sergey_E_
@_Sergey_E_ 2 жыл бұрын
Евгений, если в коде используется Provider, то не проще добавить StreamProvider, чтобы не использовать StreamBuilder. Нужно только описать UserBloc как singleton класс. Вроде при StreamProvider не нужен широковещательный стрим, достаточно обычного.
@LearnDartFlutter
@LearnDartFlutter 2 жыл бұрын
Мне очень нравится идея добавлять синглтоны в этом месте
@konstantinkist
@konstantinkist 2 жыл бұрын
О библиотеке bloc жду. А о библиотеке flutter_bloc вы снимите видео?
@user-qn6rd8yv9n
@user-qn6rd8yv9n Жыл бұрын
почему внутри синхронного кода вызывается асинхронный _initialize еще и без await? значит ли это, что код _initialize будет выполнен всё равно, но мы просто не ждем ответ ?
@khurshidddbek
@khurshidddbek Жыл бұрын
44:49
@murodaliismailov2503
@murodaliismailov2503 Жыл бұрын
Просто комментарии!
@user-mk8ol7di7g
@user-mk8ol7di7g 2 жыл бұрын
А где можно взять сыллку на код а то гит не открывает 404 ошибка !
@LearnDartFlutter
@LearnDartFlutter 2 жыл бұрын
Она только для тех кто донатит на бусти
@Raimkhodzhanov
@Raimkhodzhanov 2 жыл бұрын
А ссылку на статью про bloc забыл кинуть
@LearnDartFlutter
@LearnDartFlutter 2 жыл бұрын
точно telegra.ph/Paru-slov-o-BLoC-08-18
@TraubenfeldGANG
@TraubenfeldGANG Жыл бұрын
Евгений, мне кажется вы ошибаетесь на 16:55. Ведь сам Ангелов в разделе архитектуры говорит: - Поскольку блоки предоставляют потоки, может возникнуть соблазн создать блок, который слушает другой блок. Вы не должны этого делать. - Как правило, родственных зависимостей между двумя сущностями на одном архитектурном уровне следует избегать любой ценой, поскольку они создают тесную связь, которую трудно поддерживать. Поскольку блоки находятся на архитектурном уровне бизнес-логики, ни один блок не должен знать о каком-либо другом блоке. - Блок должен получать информацию только через события и из внедренных репозиториев.
@sergeyzhukov1370
@sergeyzhukov1370 Жыл бұрын
Вы правы. Но часто бывает необходимость в связях между сущностями и фичами за которые отвечают блоки. И в доках описаны 2 способа взаимодействия между блоками. Один из них через прослушку на слое презентации используя листенеры . Не очень подход потому что бизнес логика (а я считаю что взаимодействие между фичами это часть бизнес логики) мешается с ui логикой. Второй через репозиторий на доменном слое. Там же в примере с todos описан второй подход про который вы написали. И вот мне лично он тоже не нравится. Там в репозитории создается стрим. Блоки на него подписываются и записывают данные себе в стейты. Спрашивается а зачем нам нужны блоки если мы можем слушать стримы напрямую с репозитория и дергать там же методы? Да и большая часть бизнес логики происходит именно в репозитории. Тоесть блок тут становится каким то лишним слегка непонятно за что он впринципе отвечает. Плюс у нас теперь список todos не только в стейтах но еще и в репозитории. Хотя там какбы и утверждается что типа мы нарушаем single source of truth и нам пофик. Но самая большая проблема блока в том что если ты захочешь сменить архитектуру на другую тебе придестя идти по всем виджетам крупным и мелким и выковыривать оттуда все эти билдеры провайдеры и листенеры и это очень муторно. Особенно когда в ide нет такой кнопочки(remove builder). В идеале не хотелось бы сильно чего то менять на ui уровне при изменениях в бизнес логике или в архитектуре . Но тогда придется билдеры переместить куда то выше откуда их будет проще выковыривать (например обернуть им виджет который отвечает за экран целиком) и назвать это все view model) Но это уже может бить по перфомансу. Вообщем неоднозначный стейт менеджер однако альтернативы не сильно лучше.
@alexnik4187
@alexnik4187 5 ай бұрын
тут бы с одним научиться работать, что там будет с сотней блоков, меня не очень волнует :)
@konstantinkist
@konstantinkist 2 жыл бұрын
Кажется даже строк меньше стало...
Урок 91. Архитектуры - BLoC на событиях.
47:58
LazyLoad Dart & Flutter
Рет қаралды 7 М.
KMP vs. Flutter - Who Will Win The Cross-Platform Battle?
16:19
Philipp Lackner
Рет қаралды 39 М.
Эффект Карбонаро и нестандартная коробка
01:00
История одного вокалиста
Рет қаралды 10 МЛН
WORLD'S SHORTEST WOMAN
00:58
Stokes Twins
Рет қаралды 108 МЛН
Dependency Injection in Flutter - You HAVE to Use it !
7:07
Flutter Guys
Рет қаралды 16 М.
Чего ожидать от HTTP/3 + Go
51:07
Нина Пакшина
Рет қаралды 8 М.
Flutter - Чистая архитектура. Введение.
11:22
Konstantin Kokorin
Рет қаралды 10 М.
Flutter Localization - Official Documentation
35:01
PodCoder
Рет қаралды 37 М.
Что такое Framework простыми словами?
9:51
Sergey Nemchinskiy
Рет қаралды 185 М.