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

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

Стоит упомянуть, что на данный момент разработка из-под windows невозможна.
А вот интересно, зачем это Гуглу? Исключительно для пиара Dart? Насколько я знаю (хотя не уверен в актуальности своих знаний), Dart исполняется в виртуальной машине, и они даже отдельный билд Chromium для дарта сделали. А вот как оно работает на мобилках? Что там внутри? На выходе получится очередной WebView?
Dart работает не через WebView, отзывчивость собранных приложений намного выше, как натив. Не знаю как код исполняется на мобилке, предполагаю, что компилируется в байткод.
Вообще первое впечатление лучше чем от Xamarin и Phonegap.
Xamarin вот тоже в байткод компилится, все равно выше?
Не знаю как у Xamarin Forms, не смог настроить и запустить, хотя пытался пару дней, но та система, которая в Xamarin заставляет писать отдельный интерфейс под каждую платформу, работает так же. А вообще мой комментарий про отзывчивость относительно WebView, которое в Phonegap/Ionic.

Я успел поработать со следующими кроссплатформенными решениями: Adobe AIR, Xamarin, Ionic, Dart Flutter. И удобство разработки Dart Flutter сравнимо с Adobe AIR, по некоторым параметрам превосходит Xamarin и Ionic.
Минус Dart Flutter в том, что нельзя разрабатывать приложения из-под Windows, скорее всего нельзя тестировать на эмуляторе(у меня не вышло), и, наверняка, нет многих платформозависимых фич/либ.
Если учесть минусы, которые существуют на данный момент только из-за молодости проекта, то инструмент выглядит очень перспективным.
Xamarin от Native отличается только языком. Скорость работы приложений такая же, в некоторых местах может быть выше из-за того, что objective-c динамический язык, а C# — статический.
Там без WebView, но у них свой набор контролов https://docs.google.com/presentation/d/1cw7A4HbvM_Abv320rVgPVGiUP2msVs7tfGbkgdrTy0I/edit?usp=sharing
Про исполнение можно почитать в FAQ https://flutter.io/faq/#how-does-flutter-run-my-code-on-android
Спасибо, очень интересный материал.
Выходит, что дарт с помощью какой-то магии обращается к C++ коду.
А вы пробовали на нем что-то делать (не hello world)? Сложно ли становится если есть необходимость сделать что-то кастомное, что не сделать базовым контролом?
Пока ничего серьёзного не делал, только приглядываюсь. Кастомное сделать можно и это довольно просто, рекомендую посмотреть examples/layers/widgets в github-репозитории. Разработчики флаттера делают упор на то, что все слои (рендеринг, виджеты, материал дизайн) опциональны и расширяемы, их легко можно дополнить или заменить своим целиком.

Стандартный набор виджетов довольно широк, их можно оценить в приложении Flutter Gallery, доступном на плей маркете (https://play.google.com/store/apps/details?id=io.flutter.gallery).

Но не следует забывать, что фреймворк пока в альфе и там есть баги, хоть они и очень быстро фиксятся. Команда очень активная, разработка кипит, так что вскоре, думаю, мы получим отличнейшую библиотеку для быстрой удобной разработки.
Попытка сделать разметку как в ReactNative?
скорее всего решили сделать альтернативу ReactNative
Вообще со всех сторон странная ситуация получается: у нас есть железобетонно надежная Java для разработки приложений, которая использует NDK, но вот вам держите альтернативу на JS, которая все равно использует NDK
Не вижу ничего странного в этом. Это сильно ускоряет разработку. Приложения с одинаковым функционалом на Java писать много дольше, чем на ReactNative (из личного опыта). Уж насколько я был не искушен в мобильной разработке, у меня заняло на порядок меньше времени (на Java писал человек, знакомый с Java хорошо).
Это стирает границы. Позволяет сделать разработчиков более универсальными без потери качества конечного приложения. Мне кажется, это замечательно.
Одна из главных идей — это Dart на любом фронте: web (DartAngular или другое), iOS (Flutter), Android (Flutter). По заявлениям это позволяет шарить 70% кода (при этом самого сложного/потенциально ошибочного) и иметь единую команду разработки.

Соответственно, в разы ускоряется (и удешевляется) разработка и отладка.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.