Щупаю язык Dart в целях как оно там Flutter все дела кросплатформенность, ко-ко-ко (2 платформы, ндя). Dart как жаба совсем. После Kotlin-а ощущается мною как шаг назад. В отличие от жабы Async/await - есть! Всякие изоляты и мультитредовость еще не щупал. switch/case от С++ целиком 8) Идейный плагин как-то фурычит, терпимо. Стандартную библиотеку не проиндексировал, найти наследников от Widget не смог. В evaluate/modify автокомплит работает только по полям, а по пропертям не может. Написал switch(), а он мне его возьми и подкрась моментом - требует чтобы все кейсы из енума там прописал. Не отстал, пока не написал. Короче, проблемы первого мира у меня. Релоад работает. Жосткий релоад тоже работает. Я хочу написать десктопно-планшетную приблуду. Пробовал на гейбуке разные эмуляторы, уже упоминал. Остановился на Bluestacks - самый быстрый и приятный (родной SDK эмулятор тормозит 3 кадра в секунду). Минус Bluestacks - говно мамонта, даже настроек нету, HiRes не поддерживает. Афтары пишут: сорян, гейбук не в приоритете, венда наш фронтир. Зато честно. В отличие от также шустрого Andy (в нем Android 4.4) флуттер на Bluestacks поднялся и взлетел без проблем. Жалко нету нативного десктопного таргета, но с методологией разработки (релоады) на девайсе/эмуляторе это менее важно. Буду продолжать информировать.
2017-10-25 16:19:02

Участники:
@SannySanoff - 4, @akastargazer - 3

@SannySanoff
Блин, моя первая строка поста семантической структурой напоминает APL/KDB/Q
#2887273/1 2017-10-25 16:21:39
@akastargazer
Релоад это чё такое?
#2887273/2 2017-10-25 18:53:23
@SannySanoff
Фишка в том, что ты пишешь гуй. Гуй там на манер react native, то есть немножко модели, и немножко view. Когда ты запускаешь на девайсе, то туда неспешно компилится и инсталлируется рантайм+дебажный сервер. Потом оно запускается на девайс, всасывает твои сорцы и там в интерпретаторе их гоняет. Когда ты поменял кусок кода, ты не передеплоишь, а жмешь релоад, и оно релоадится измененные файлы, и еще автоматом дергает перерендерить, а там интерпретатор это делает. Получается волшебным образом изменение попадает на экран, занимает это 1 секунду. Это как Hotswap в жабе, но не так ограниченно, а близко по динамизму к лиспу. С учетом того, что рантайм полностью динамический, то близость к бесструктурной каше лиспа иле жабоскрипта даже ближе чем кажется; ведь сразу лисп там не угадывается ПОТОМУ ЧТО сорцы обязательно строго типизированы как в жабе, и на вид оно жабо жабой. В продакшн это все компилируется компилятором через llvm/arm получается сишечка что на андроеде, что на гейоси, шустренько. Они пиарят 1) очень быструю графику (как по мне, до нативной не дотягивает, но близка к ней) 1а) быстрые анимирующие layouts как в андроедах и даже мощнее 1б) material design из коробки 2) вот этот вот быстрый релоад, весь флуттер вокруг него с бубном пляшет, оттого быстрая скорость разработки на устройство 3) нативную компиляцию в конце в быстрый код. fast fast fast flutter. Интерпретатор у него тоже не особо тормозной, в девелопменте. Скриншоты: https://lh3.googleusercontent.com/jTngvUtl1oG4QrChQb-TVBkoFvjx2WznncnGPjwazaB1-kErBw4t-RMZYrsLBF9PnoM=h900 https://cdn6.aptoide.com/imgs/3/8/5/385f22795c835b1ca7deefa5823b6cc5_screen.png?h=464 https://lh3.googleusercontent.com/bQu2d6Bmak9MHdeNOqD6daoXy8zOZqtjMClbh6X4HDrX2ToYTxOcRyCHi5zNqpNfiWs=h310
#2887273/3 → /2 2017-10-25 20:27:56
@akastargazer
Понял, спасибо. Дак погоди, дарт это же гугловское поделие, а под него есть негугловская среда выполнения, которая на андроеде запускается?
#2887273/4 → /3 2017-10-26 14:46:47
@SannySanoff
> под него есть негугловская среда выполнения которая на андроеде запускается Под андроед компилится готовый бинарник который сам с собой все носит. Вот содержимое почти пустого проекта: https://imgur.com/a/fVJ1v
#2887273/5 → /4 2017-10-27 10:37:44
@SannySanoff
Дарт - это дарт. А флуттер - это флуттер (но тоже гугловцы).
#2887273/6 → /4 2017-10-27 10:39:14
@akastargazer
я понял, спс, почитал ещё про флуттер, интересно
#2887273/7 → /5 2017-10-27 11:05:15