Преимущества / недостатки AIR против Flex / Web - PullRequest
1 голос
/ 15 июня 2010

Мне поручено написать приложение для размещения и соединения объектов (вроде планировщика комнаты, где вы можете разместить мебель). Я сделал демонстрацию с использованием Flash Builder 4 и создал ее для AIR в качестве настольного приложения. Теперь клиенту требуется полное приложение, но они и я не уверены, продолжать ли его создание как приложение AIR или преобразовать его в веб-приложение с помощью Flex. Я попытался сделать простое преобразование приложения AIR в веб-приложение, и большинство работало, но не все. Вещи, которые не работают, кажутся простыми ошибками, но не полным отсутствием возможностей.

Возможности, которые мне понадобятся (кроме моделирования):

  • Печать готового изображения + список мебели, которая была размещена
  • Способ сохранения и восстановления готовых планов
  • Способ экспорта списка мебели в формат Excel
  • Обработка целого ряда данных о различных объектах

Пока реализована только печать, и, похоже, она работает и в веб-приложении.

Какие преимущества / недостатки есть у двух подходов? Есть ли какие-либо возможности, которые мне нужны, намного хуже (или даже невозможны) для реализации в любом из этих подходов?

Редактировать: Спасибо всем за ваши ответы. Из них и моих собственных исследований я придумал следующее:

Веб-приложение

преимущества
  • Доступно, установка программного обеспечения не требуется
  • Легко быть в курсе
Недостатки
  • Требуется Flash 10 (для сохранения файлов)
  • Требуется веб-сервер для обслуживания контента
  • Немного более длительное время разработки (откуда я сейчас)
  • Требуется подключение к Интернету для работы
  • Много транспорта данных, может быть медленным в медленной сети

Настольное приложение AIR

преимущества
  • Немного быстрее время разработки (откуда я сейчас)
  • Веб-сервер не требуется
  • Может использоваться без подключения к Интернету
  • Все данные локальны и быстрее загружаются
Недостатки
  • Требуется среда выполнения Adobe AIR + отдельная установка программы
  • Обновления должны распространяться среди всех пользователей, а администратор должен их устанавливать

Ответы [ 4 ]

3 голосов
/ 15 июня 2010

Нет однозначного ответа на этот вопрос.Несколько моментов, которые следует учитывать:

  1. Если вы хотите использовать определенные функции AIR, такие как автономное использование, интеграция с ОС пользователя и т. Д., Вам следует использовать приложения AIR (конечно)
  2. Flexих легче распространять и обновлять, потому что все используют один и тот же экземпляр swf с сервера.При использовании серверной части сервера с AIR вы должны знать о возможных проблемах обратной совместимости при обновлении приложения.
1 голос
/ 15 июня 2010

Самый большой недостаток связан с моделью обновления - вам нужно быть суперпользователем для обновления эфирного приложения - особенно на предприятии пользователи приложений AIR не имеют прав на его обновление.Если ваше приложение работает в браузере, у вас нет этой проблемы.

Кроме того, я не вижу никаких недостатков.

1 голос
/ 15 июня 2010

Оформить flash 10 FileReference Вы можете позволить пользователям легко сохранять результаты в своей локальной файловой системе.Я использовал его для создания PDF и позволил пользователю сохранить его для печати. ​​

Для стороны PDF я использовал Живой PDF .

protected function PrintCard(event:MouseEvent):void
{
    //ShowHideBorders();
    var printPDF:PDF = new  PDF( Orientation.LANDSCAPE, Unit.MM, Size.LETTER );
    printPDF.setDisplayMode( Display.FULL_WIDTH, Layout.SINGLE_PAGE );
    printPDF.addPage();
    printPDF.addImage(CardPanel);
    var fileRef:FileReference = new FileReference();
    fileRef.save(printPDF.save(Method.LOCAL), "card.pdf");  // Sends the file to the USER

    //ShowHideBorders();    
}
1 голос
/ 15 июня 2010

Есть много небольших различий, но в общих чертах единственные соображения, о которых вы должны подумать:

  1. Нужно ли это в Интернете?Требуется ли доступ к файловой системе.

Если (1) использовать обычную Flash.Если (2), тогда используйте AIR.

...