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

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

Сходу попробовал expenses. И сходу не вышло.

1. Пришлось сначала сделать dart create examle
2. Потом dart pub add http
3. Заменить на <double?>
Тогда сработало (до сего момента с dart/flutter не сталкивался)

4. Поток не закрывается, ждёт чего-то…

Какие, по-вашему, в данном случае преимущества у Dart+Flutter перед другими языками и их фреймворками, позволяющими создавать кроссплатформенные GUI приложения?

Субъективная позиция
Более-менее нормальная типизация.
Компонентный подход.
Большая библиотека плагинов, которые работают работают одинаково на разных осях.
Очень удобное асинхронное апи.

Не скажу за все языки, но такого добра в общем-то у некоторых хватает. Как по отдельности так и все пункты сразу.

Могу привести в пример Delphi:
● Типизация? Есть
● Компонентный подход? Есть
● Большая библиотека кроссплатформенных плагинов? Есть
очень удобное асинхронное апи? Тут есть, конечно, нюансы. async/await нет, но асинхронность там работает очень хорошо (TThread, ITask, IFuture и т.д.)

При этом есть и другие преимущества, но и, естественно, недостатки

Эххх дедьфисты вы ещё живы ....

Живее всех живых))

НЛО прилетело и опубликовало эту надпись здесь

Из реально используемой кроссплатформы сейчас только веб-фреймворки, .NET и Flutter (возможно Kotlin + Compose в будущем). Qt в мобильном сегменте это исчезающий вид, а остальные фреймворки скорее экзотика. А что выбрать уже каждый решает для себя, исходя из личных знаний, сложности приложения, скорости выполнения задачи. Ну, к примеру, преимущество Flutter в том что он даёт похожий на веб-фреймворки декларативный подход к разработке, но с большим performance готового приложения.

Как я уже сказал чуть выше, Delphi позволяет создавать нативные кроссплатформенные приложения. Используется фреймворк FMX (FireMonkey). Код исполняется нативно, а интерфейс может быть как нативный, так и не нативный, на выбор. Нативный интерфейс, логично, ограничен ОС и не поддается полной стилизации, не нативный более гибкий с огромными возможностями стилизации (сопоставимо с CSS стилизацией). При чем стиль любого контрола можно создавать визуально, без применения кода (в том числе и анимацию и реакции). При этом для некоторых ОС можно добавлять или убирать часть функционала, ограничивая код директивами, а стили можно создавать как отдельно, так и общий для всех платформ. Стилизация использует не стандартный подход, что позволяет применять любые стили любым контролам. Т.е. можно стиль кнопки применить к "метке" label или даже таблице. Ограничений нет. Но это уже тонкости.

Приложение, созданное на основе FMX собирается на Windows (кроме ARM пока), Linux (за исключением некоторых дистрибутивов, в которых есть проблемы с Gtk, но их всего несколько и не столь популярных), MacOS, Android и iOS. Т.е. покрывает все основные ОС.

Однако, из-за достаточно низкой популярности, об это мало кто знает

Это понятно что есть и другие решения, но популярные можно пересчитать на пальцах. А у решений на Delphi есть ещё клеймо устаревшего/академического языка, приток новых разработчиков намного меньше C# или JS.

А напишите статью, как сделать мобильное приложение на Дельфи. Должно быть интересно.

На самом деле, нет ни каких особенностей или ухищрений, чтобы создать мобильное приложение на Делфи.

Для этого используется штатная среда разработки (которая всегда и была) - RAD Studio. Проект мы создаем почти как всегда, за исключением того, что выбираем не Windows VCL Application, а Multi-Device Application. А дальше всё как обычно: окно, кнопочки, поля. Есть конечно множество тонкостей и изменений в контролах, т.к. они позволяют намного больше, чем VCL. В частности привязки (Align), слои и так далее.

По умолчанию выбрана сборка под Windows - Debug, но для сборки под другую платформу достаточно выбрать требуемую платформу в дереве проекта и снова нажать сборку. При этом, если телефон (или эмулятор) подключен к компу, то в верхнем меню он отобразится (там список), чтоб можно было запустить приложение и отлаживать.

При разработке интерфейса есть возможность настроить его отдельно под разные виды экранов, в том числе разный DPI.

Если хватит духу, возможно, напишу статью

Было бы интересно почитать.

А как дела у Lazarus (вроде бы так опенсорная RAD называлась в начале 2000) обстоят сейчас, не знаете?

Напрямую с Лазарусом не работаю. Но работаю со многими, кто использует только эту среду для написания на Delphi/FPC. Большинство из них используют Linux и разрабатывают для него, либо для него и Windows.

Сама среда, к моему удивлению, не потерпела визуальных изменений с момент её выхода. И на первый взгляд не внушает доверия, однако FPC по своей ветке развития ушел достаточно далеко. Например, добавлены дженерики (не совместимые с Делфи) и, возможно, много чего ещё. Платформ, на которые позволяет собирать эта среда очень велико. Ну и сама среда может работать на всех основных ОС.

В общем, всё что могу сказать, это то, что идет развитие и среды и FPC. Свежий апдейт вышел 5 января этого года.

Напишите. Тут дело даже не в сложностях разработки, а в самом факте. Просто покажите как выглядит этот процесс, а заодно много окружающих узнают о самой такой возможности. Я вот впервые слышу, что в дельфи можно под мобильную платформу разрабатывать. Не то чтобы это была великая тайна, мне просто в голову не приходило поинтересоваться.

Что насчёт цены Delphi, а также возможность нанять разработчиков?

Сейчас вообще с покупкой проблемы, в связи с последними, так сказать, событиями. Цены там своеобразные, но зато не подписочная система. Лицензия дает полное право получать обновления в рамках мажорной версии. А обновление мажорной версии стоит на 2/3 дешевле (примерно). Какие цены будут после текущих событий, надеюсь, узнаем в будущем.

Но, есть и бесплатная версия - Community Edition, которая имеет ограничение лицензии аналогичной MS VS и отсутствует сборка под Linux. В остальном ограничений нет.

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