2010-11-06 4 views
1

Это не вопрос написания веб-приложения и настольного приложения. Речь идет о том, чтобы позволить заказному приложению запускаться в браузере, используя пользовательский плагин, эффективно используя браузер так же, как ваш рендер-окно.Каковы преимущества и недостатки написания плагина, позволяющего вашему C++-приложению запускаться через веб-браузер?

QuakeLive делает это - это приложение на C++ с некоторым дополнительным кодом для запуска через браузер. Игровые движки Unity3D и Torque также предоставляют варианты развертывания, чтобы сделать то же самое.

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

Не уверен, что для этого есть правильный термин, пожалуйста, отредактируйте мои теги, если есть!

+2

Хороший вопрос. Другой плагин в той же категории - [Родной клиент] Google (http://code.google.com/p/nativeclient-sdk/), который предназначен для запуска кода x86 через браузер. –

+0

Я думаю, что это немного расплывчато ... Разве вы не можете сказать нам, какое приложение вы имеете в виду? – 2010-11-06 19:50:04

+0

@jdv: что-то связанное с рендерингом в реальном времени. Но это общий вопрос. Если приложение выглядит одинаково на рабочем столе/браузере, зачем делать версию браузера. –

ответ

1

Это зависит от приложения. Мой фон в области медицинской визуализации, но то, что я должен сказать, что будет применяться ко многим информационным системам клиентов:

Pros:

  • становится легче строить REST на основе интеграции между приложениями. Этот тип интеграции может использоваться админами для создания интегрированных порталов. (Таким образом, идентификаторы ID из одного приложения могут использоваться для запуска другого с правильным контекстом и т. Д.).
  • В идеале пользователи могут самостоятельно установить ваше приложение по запросу (зависит от контекста, если это действительно возможно)
  • Развертывание новых версий становится проще. Обычно технология хостинга имеет встроенное развертывание. В средах клиентских серверов это может сэкономить много работы для ИТ-отдела.
  • У вас может быть один стартовый URL для ПК и тонких веб-клиентов (например, телефоны). Это облегчает пользователям поиск вашего приложения.
  • Вы можете централизовать конфигурацию для клиентов. Для автономных клиентов вы могли бы, конечно, централизовать конфигурацию, но если вы используете веб-приложение, вы всегда знаете наверняка, что есть сервер, поэтому вы всегда можете его использовать.
  • вы можете разгружать работу, которая неактивна для локального доступа к серверу. (уменьшить количество обратных вызовов между клиентом/сервером).

Минусы:

  • Каждый поставщик браузер имеет свою собственную модель упаковки машинный код. Их не так уж много, но это определенно дополнительная работа.
  • Ваше приложение должно «хорошо поиграть» с хостинговым приложением. Например, когда пользователь закрывает окно браузера, браузер может предвидеть, когда и как вы можете попросить пользователя сохранить.
  • Обновления браузеров могут сломать ваш плагин.
  • Системные администраторы могут иметь ограниченную установку плагинов, запрещая пользователям устанавливать приложение по требованию (это очень часто происходит для activex).
  • пользователи не могут нравится, что дополнительный код вводится в браузер (есть много вредоносных программ по всему, что делает это)
  • вы не имеете возможность обновить необходимые компоненты перед установкой
  • я не верьте, что это просто упаковка существующего кода в плагиновую инфраструктуру.
  • Ваша заявка больше не будет работать, когда сервер не работает ...
+0

хорошая запись. Предположительно, вы можете делать стандартные вещи JS, чтобы предотвратить закрытие вкладки без подтверждения, привязывая это к вашему собственному коду? Кроме того, делают ли такие плагины доступ к локальному хранилищу, например, для записи журналов и т. Д.? –

+0

Я посмотрел ваш сайт - поддерживаете ли вы поддержку браузеров этих продуктов на основе .net и это очень полезно? Кстати, вы владелец этой компании - я хотел больше узнать об этом? –

+0

Нет, но я архитектор. У 3mensio есть веб-решения, но у нас нет собственной клиентской части кода. История была основана на опыте предыдущей работы. Там я работал в основном с ActiveX, но большинство вопросов относится к веб-ресурсам в целом. Вы можете написать мне больше вопросов: jan dot devaan at 3mensio dot com. – 2010-11-07 16:08:18