Использование AIR для добавления настольных графических интерфейсов - PullRequest
1 голос
/ 17 августа 2010

Предположим, я разрабатываю приложение с логикой в ​​виде программы CLI, которая может быть скомпилирована для различных платформ. Чтобы добавить графический интерфейс, я мог бы разрабатывать собственные версии отдельно для каждой платформы или использовать кроссплатформенный инструмент, такой как Tcl / Tk, wxLua или PyGTK. Некоторые люди, такие как Брюс Экель и Джеймс Уорд , продвигают Flash / Flex в Adobe AIR для этого.

Я изучил это, но не смог найти четких ответов на эти основные вопросы.

Родной внешний вид Архитектура Spark в Flex 4 улучшает поддержку создания скинов до такой степени, что кажется, что вы можете соответствовать любому L & F. Какие ресурсы доступны для реализации Windows / GTK + / Cocoa L & F и сколько это стоит?

Оперативность Я бы оценил эти популярные наборы инструментов от самых маленьких до самых быстрых: FLTK, FOX, GTK +, Tcl / TK, Swing, Qt. Где AIR вписывается в этот диапазон?

Стабильность Для стабильности приложения и управления памятью для продолжительного приложения с широким взаимодействием с пользователем? Я читал, что утечки памяти были серьезной проблемой в AIR.

Локальный доступ к системе Я думаю, что самой большой жалобой на AIR 1 была его изоляция от локальной системы. Теперь AIR 2 добавляет связь через stdin / stdout с классом NativeProcess . Насколько хорошо это работает для реализации функциональности, которую вы обычно хотите в графическом интерфейсе?

Размер упаковки Начиная от второстепенного интерфейса с несколькими кнопками и текстовыми полями и заканчивая чем-то вроде IDE, насколько большой будет версия AIR, по сравнению, скажем, с Tcl / Tk или wxPython?

Ручное кодирование Если вы не используете Flash Builder, насколько сложно, соответственно, создавать или поддерживать нетривиальный проект?

1 Ответ

1 голос
/ 23 августа 2010

Родной внешний вид : возможно создать оболочку для приложения Flex, чтобы оно выглядело нативным. И загрузить другой скин в зависимости от ОС. Уже есть скины для Windows и Mac (не уверен, что они совместимы с Flex 4), доступные на www.scalenine.com . Но эти скины никогда не будут совпадать на 100%, так как они копируют l & f, фактически не используя нативные виджеты.

Отзывчивость : Я думаю, что это, вероятно, где-то между Swing и GTK +. Но у меня нет эталонов, подтверждающих это, - только мой личный опыт.

Стабильность : Пока код хорош, а объекты обрабатываются GC, все должно быть хорошо. В AIR 2 устранены некоторые утечки памяти, которые привели к проблемам, на которые вы ссылаетесь.

Доступ к локальной системе : NativeProcess позволяет вам делать практически все что угодно. Но для более сложных случаев использования, вероятно, потребуется что-то вроде Merapi .

Размер пакета : весь набор компонентов пользовательского интерфейса во Flex составляет около 2 МБ. Тогда любой пользовательский код добавится к этому номеру. Обычно растровые изображения - это то, что действительно раздувает SWF-файлы. Вы можете посмотреть на Аппарат как способ уменьшить размер SWF-файлов.

Ручное кодирование : я пишу код все время только с открытым исходным кодом Flex SDK, AIR SDK и vim (мой текстовый редактор на выбор). Это все, что вам действительно нужно. Но вы потеряете в завершении кода, визуальной отладке и т. Д. Но есть и другие инструменты с открытым исходным кодом для этих вещей.

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