Size: a a a

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

2020 July 11

GV

Gorohov Valeriy in Dart & Flutter по-русски
Как сделать clip  по SliverPersistentHeader? Т.е. вместо этого:
источник

АТ

Артем Терещук... in Dart & Flutter по-русски
Ребят, в чём может быть проблема ?
Ничего не делал, просто запустил VS
источник

GV

Gorohov Valeriy in Dart & Flutter по-русски
Получить это:
источник

EK

Emil Kulmanov in Dart & Flutter по-русски
Артем Терещук
Ребят, в чём может быть проблема ?
Ничего не делал, просто запустил VS
Flutter pub get
источник

EK

Emil Kulmanov in Dart & Flutter по-русски
В консоль пропиши
источник

GV

Gorohov Valeriy in Dart & Flutter по-русски
Gorohov Valeriy
Получить это:
Код:
Stack(
 children: [
   Image.network('https://w.wallhaven.cc/full/ey/wallhaven-eymzjk.jpg'),
   CustomScrollView(
     slivers: [
       SliverPersistentHeader(
         pinned: true,
         delegate: CustomSliverPersistentHeaderDelegate(),
       ),
       SliverList(
         delegate: SliverChildBuilderDelegate(
           (context, index) => ListTile(title: Text("Text $index")),
           childCount: 100,
         ))
     ],
   ),
 ],
);
источник

IK

Igor Kulakov in Dart & Flutter по-русски
Eduard Lanchev
Ребята, подскажите, что почитать по архитектуре приложений на Flutter? Хочется посмотреть на "классические" шаблоны файлов и каталогов. Вообще такое есть или кто как сам себе представляет?
Хочется лучше понять, что на Flutter'е выносят в каталог/файл model. Где-нибудь описаны принципы?
Вот тут красиво файлы и папки разложены. Если еще актуально. Но это уже довольно большое приложение. https://github.com/autodo-app/autodo
источник

D

Donets in Dart & Flutter по-русски
Народ вопрос на засыпку до версии 5.0.0 bloc работал нормально но при обновлении выдаёт ошибку при navigationbloc() почему такое может быть?
источник

EL

Eduard Lanchev in Dart & Flutter по-русски
Igor Kulakov
Вот тут красиво файлы и папки разложены. Если еще актуально. Но это уже довольно большое приложение. https://github.com/autodo-app/autodo
Игорь, спасибо!!!
Актуально!
А книги или статьи случайно в добавок не подскажете?
источник

MB

Michael Bazilique in Dart & Flutter по-русски
Юзал уже кто то cubit на практике?
источник

IK

Igor Kulakov in Dart & Flutter по-русски
Eduard Lanchev
Игорь, спасибо!!!
Актуально!
А книги или статьи случайно в добавок не подскажете?
Честно говоря по архитектуре нет нормальных материалов которые бы мне понравились. Наиболее популярный подход это BLoC по этому слову можно гуглить и собирать понемногу информацию.
Для меня самыми полезными были примеры с этого сайта в разделе Tutorials: https://bloclibrary.dev/#/gettingstarted.
И еще принципы redux в BLoC тоже используются, но в материалах по блоку я этого не нашел (например что стейт нельзя изменять). Про это можно отдельно почитать тут: https://redux.js.org/introduction/three-principles
источник

IK

Igor Kulakov in Dart & Flutter по-русски
Michael Bazilique
Юзал уже кто то cubit на практике?
Только хотел попробовать, а его уже в блок засовывают. Буду ждать когда слияние это доделает Феликс и немного обкатают первые пользователи и потом попробовать с новым блоком.
источник

EL

Eduard Lanchev in Dart & Flutter по-русски
Igor Kulakov
Честно говоря по архитектуре нет нормальных материалов которые бы мне понравились. Наиболее популярный подход это BLoC по этому слову можно гуглить и собирать понемногу информацию.
Для меня самыми полезными были примеры с этого сайта в разделе Tutorials: https://bloclibrary.dev/#/gettingstarted.
И еще принципы redux в BLoC тоже используются, но в материалах по блоку я этого не нашел (например что стейт нельзя изменять). Про это можно отдельно почитать тут: https://redux.js.org/introduction/three-principles
Вот и я тоже искал и находил только разрозненные материалы. Не смог найти единое описание концепции, да еще и для Flutter. Как я понял, вся практика переходит из JS. Но Flutter как бы пропагандирует немного другой подход - все виджеты. И мне моим нубским взглядом кажется, что опыт JS с одной стороны кому-то помогает, а с другой стороны получается скрещиваем ужа с ежом.

Еще раз спасибо! Изучу все материалы!
источник

IK

Igor Kulakov in Dart & Flutter по-русски
Igor Kulakov
Только хотел попробовать, а его уже в блок засовывают. Буду ждать когда слияние это доделает Феликс и немного обкатают первые пользователи и потом попробовать с новым блоком.
Тут еще надо разделять вид и логику приложения. Сам Flutter, виджеты, фраза "всё - это виджет" - это только про отображение говорится. И тут он действительно альтернатива старым css и html. Тут всё новое. А если речь про архитектуру и про разделение вида от логики - то здесь уже многое позаимствовано из js подходов.
источник

S

SilentNox in Dart & Flutter по-русски
Igor Kulakov
Вот тут красиво файлы и папки разложены. Если еще актуально. Но это уже довольно большое приложение. https://github.com/autodo-app/autodo
Для такого функционала - столько кода?
источник

IK

Igor Kulakov in Dart & Flutter по-русски
SilentNox
Для такого функционала - столько кода?
Ну приложение только на вид страшненькое, но логики там не мало. Это ж не обычная тудушка. В коде - красивая чистая архитектура Блок, которую легко потом читать тем кто знает паттерн. Или вы не согласны?
источник

S

SilentNox in Dart & Flutter по-русски
Igor Kulakov
Ну приложение только на вид страшненькое, но логики там не мало. Это ж не обычная тудушка. В коде - красивая чистая архитектура Блок, которую легко потом читать тем кто знает паттерн. Или вы не согласны?
Я не то чтобы не согласен, я пока пытаюсь понять, зачем этот паттерн нужен и что он облегчает в работе.
источник

RK

Ruslan Kunaev in Dart & Flutter по-русски
SilentNox
Я не то чтобы не согласен, я пока пытаюсь понять, зачем этот паттерн нужен и что он облегчает в работе.
Отделяет логику от представления, как и прочие подобные
источник

IK

Igor Kulakov in Dart & Flutter по-русски
SilentNox
Я не то чтобы не согласен, я пока пытаюсь понять, зачем этот паттерн нужен и что он облегчает в работе.
Ну это уже крупный пример. Я его сам недавно откопал и беру оттуда разные подходы. Там код даже чище чем у Феликса в примерах. А для начала лучше смотреть на проекты из https://bloclibrary.dev

Для меня блок полезен тем, что когда приложение разростается плюс когда в нем появляются сетевые запросы - его становится очень сложно поддерживать и понимать что в нем происходит. Поэтому появились такие подходы когда есть некий стейт приложения, на который можно влиять только с помощью ивентов и вид "реактивно" отображает этот стейт. Если поставить такие рамки  то все связи в приложении становятся гораздо понятнее. Становится ясно в каком направлении данные приходит и в какой момент что-то меняется. Одна из реализаций такого подходя - это BLoC.
Да, с ним надо написать больше кода, но он сильно облегчает жизнь когда проект большой. Если использовать плагин, то создавать дополнительный код блока - легче. И на мой взгляд лучше сразу начать писать с архитектурой, чтобы потом не переделывать весь код с нуля. Я уже несколько раз переписал свое приложение и теперь очень люблю нормальный архитектурный подход )
источник

S

SilentNox in Dart & Flutter по-русски
Ruslan Kunaev
Отделяет логику от представления, как и прочие подобные
Это можно сделать разными способами. Мне нравится подход из сишарпа, с ивентами. К сожалению, в дарт нет нормальных ивентов.
источник