Как стать автором
Обновить

Комментарии 21

Flutter — отличный инструмент. Полностью подтверждаю. Спасибо за заметку.
Хелловорды работаю везде хорошо. Но не всем нужно писать приложения в духе «фронт как на вебе, только на мобилке».

Как flutter интегрируеся с нативным кодом, в том же андроиде?
Справедливости ради, React Native — это тот же «фронт как на вебе, только на мобилке».
Ну и если вам нужно не оно, то вам оно не нужно — ваш кэп.

Что касается интеграции с нативным кодом — не знаю, я не настолько хорош во Flutter.
Раз уж вы сами упоминули реакт нативе, там всё это есть и не только на уровне нативных компонент.
Я знаю, что в React Native это есть, и предполагаю, что такое есть и во Flutter, но я с этим не работал.

Акцент был на ваш комментарий про то что «не всем нужно» — тем, кому не нужен «фронт как на вебе, только на мобилке» не нужны ни React Native, ни Flutter.
Хелловорды работаю везде хорошо. Но не всем нужно писать приложения в духе «фронт как на вебе, только на мобилке».

Ну вот у нас "мобильный Торговый представитель создан на Flutter Это ж уже не helloword
Видео части работы(из обучающей серии)
https://cloud.mail.ru/public/4EK8/AAaoC6BPf

Никак, приложение на flutter компилируется в нативный код, в debug режиме в код встраивается виртуальная машина, которая позволяет делать мгновенный hot reload, а в release режиме это нативный код.

Интересно, они уже сделали возможность корректно обработать оповещение о нехватке памяти на Android? Корректно в данном случае — это синхронно, т.к. если обрабатывать асинхронно то система вполне может убить процесс — т.к. вызов обработчика завершился, а памяти больше не стало.

Я не специалист, но похоже это всё-таки разные вещи — в этом репозитории есть и BLOC, и redux.

Ну и не скажу, что я в восторге от redux — слишком много шаблонного кода, который нужно написать, прежде чем оно начнёт работать. Provider выглядит как-то полегче.
Мне Mobx понравился. Выбрал его, несмотря на то, что в React работал только с Redux. Там еще терпимо, потому что сам React берет на себя фазу обновления UI. А во flutter нужно делать разные stores, подписываться на их изменения из нужных компонент, и обновлять их.

Спасибо за статью.

Любопытство потянуло на Flutter и переписал свое Native Android приложение.
Результат: iOS и Android.

ИТОГО:
+ очень легко и быстро
— пока сыровато
— пока сыровато

Могли бы вы раскрыть это конкретными примерами? Что именно вызвало у вас затруднения?

например,

1. Это мой первый и единственный cross-platform, но меня размер испугал. Native Android весил около 3MB (apk). Flutter apk = 16MB, bundle = 9MB.
2. В Native Android есть xml файлы, через которые я мог под разные экраны корректировки делать. В Flutter я не понял как это делать, если весь UI пишется в коде =)
3. Библиотек маловато, тот же Firebase имеет лимитированную поддержку под Admob о_О
4. Приложение запускается и работает, но всегда есть warnings (deprecated and etc).

p.s Но все же, за скорость реализации огромный плюс.
  1. Тут нечего пугаться, посмотрите на размеры приложений установленных на вашем телефоне. Flutter добавляет фикс размер, а не увеличивает размер приложения в разы. На более серъёзных приложениях довесок несущественный.
  2. https://habr.com/ru/company/funcorp/blog/442432/#widget_layout надо всего лишь освоить MediaQuery
  3. Чем больше конкретики в запросе тем проще приходит ответ..
  4. Анализатор можно под себя настроить

Насчет размера… Не знаю в курсе Вы или нет(я вначале работы с flutter был не в курсе)
Есть дебажная зборка… и она тяжелая, ибо отягощается обратной связью со средой разработки.Вы поменяли код и тут же runtime на вашем устройстве произошли изменения.(Это ещё одна фишка за которую я люблю flutter).И есть релизная сборка (из неё выхолощены обратная связь с IDE)
https://flutter.dev/docs/testing/build-modes
И она намного меньше весит и намного быстрее.

Про билды в курсе.
Вот тут все описано и я ему следовал при релизе.

Интересно, код разметки UI чем-то напоминает QML. По моему личному мнению это правильный путь, в котором есть компромисс между декларативностью и явностью разметки.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации