Подтвердить что ты не робот

Когда выбирать между веб-интерфейсом и собственным GUI?

Многие приложения (особенно сети, например, совместное использование файлов, программа запросов sql, некоторые многопользовательские игры), как мы знаем сегодня, могут быть легко предоставлены с помощью веб-интерфейса.

Мой вопрос в том, когда я должен сделать приложение доступным с помощью браузера?

Когда будет разумно использовать настольное приложение, создаваемое с использованием таких интерфейсов, как Qt, Visual Basic и т.д.

4b9b3361

Ответ 1

Нет общего ответа на этот вопрос. Это зависит от некоторых факторов:

  • Целевая группа . Широко распространена или объединена?
  • Портативность. На каких платформах работают ваши пользователи?
  • Производительность. Многое нужно? Если да, то настольное приложение будет лучше. Я не могу представить программное обеспечение для редактирования видео, работающее в браузере. Может быть, через 10 лет:)
  • и многое другое, которые необходимо выяснить индивидуально

Но тенденция явно идет на веб-приложения. Вы можете связаться с довольно много людей с ними.

Ответ 2

Некоторые точки для веб-интерфейса:

  • Когда программа должна быть с другого компьютера на сеть
  • Когда более быстрое развитие требуется скорость (обычно быстрее писать html/javascript, чем Qt/Gtk и т.д.)
  • Чтобы программа была перекрестной совместимая платформа

Ответ 3

Я все больше полагаю, что мы должны использовать интерфейсы на основе веб-интерфейса, javascript (или flex) по умолчанию. Это означает, что в образе приложения намного меньше кода, плюс он позволяет использовать одну базу кода, которая делает что-то хорошо, более чем несколько, что может сделать это менее эффективно.

Если вы создаете веб-интерфейс для начала, вам никогда не понадобится отдельный проект для создания веб-интерфейса.

С современными браузерами, javascript и ajax и javascript-библиотеками вы можете создать чрезвычайно богатый интерфейс, который можно легко изменить.

Ответ 4

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

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

Компания пошла вперед и разработала клиентское приложение .net, и они получили грубое пробуждение. Компания не была готова к сложности развертывания для любого количества клиентских конфигураций. Например, мы получили от Novell Networks. Они не были готовы к увеличению стоимости поддержки клиентской заявки. (И да, развитие предостерегло и пыталось предупредить их, что это значит).

Таким образом, вы не только должны задавать различные вопросы, но и оценивать их в контексте организации, производящей программное обеспечение.

Вещи, которые следует задать, включают:

  • Во-первых, и formost может ли ваше приложение работать как веб-приложение? Некоторые приложения просто возможны. если вам нужен доступ к ресурсам низкого уровня, у вас не будет много вариантов.
  • Можете ли вы предоставить материальные затраты на клиентское программное обеспечение? Если это распределенное приложение, что происходит, когда вы обновляете сервер, но обновляете его.
  • Можете ли вы поддержать клиента?
  • Каков опыт создания команды? Это огромное ИМХО. Независимо от того, насколько хороша команда при создании веб-приложений, они будут ошибаться в выполнении клиентских приложений, которые не был бы опытным клиентским разработчиком.

Ответ 5

Только для настольного приложения, если вы можете управлять средой (интрасети) или программой в среду (кросс-платформенная версия), в которой будет работать этот пакет/приложение.

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

Ответ 6

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

  • Вам не нужно развертывать веб-приложения
  • Люди часто чаще используются для использования веб-браузера, чем для пользовательского приложения, поэтому обычно приложение получает прибыль usiblility
  • Обычно пользователям проще искать то, что они ищут в веб-приложении из-за интерфейса.
  • Вам нужно только протестировать несколько браузеров, и вам не придется тестировать множество конфигураций клиентов, которые могут конфликтовать.
  • В веб-приложении вам не нужно заботиться о том, какую операционную систему может использовать клиент. Например, предположим, что ваша компания решает переместить настольные компьютеры в Linux, вам не придется создавать новую версию.

Вам нужно разработать настольное программное обеспечение, если вам нужно что-то быстро развиваться или вам нужны интерфейсы производительности/реагирования (веб-сервер все еще медленнее, чем рабочий стол), или если вы разрабатываете что-то, что невозможно сделать в Интернете (подумайте о графике программное обеспечение/сложные игры).

Ответ 7

Чтобы разработать приложение, лучше всего разбить код клиента и сервера. В настольном приложении это обычно не так. Клиентский код, который обрабатывает взаимодействие с пользователем, интегрируется с кодом сервера, который обрабатывает пользовательские команды. Однако это не обязательно, просто разделите код и обменивайтесь данными по TCP/IP.

Следующий вопрос: должен ли ваш клиентский код запускаться в браузере или как собственный GUI. Для меня собственный GUI лучше по ряду причин: - работает быстрее - тот же язык программирования для кода клиента и сервера - меньше зависит от изменения компонентов программного обеспечения: браузер, html, css, веб-сервер

Большинство графических интерфейсов являются многоплатформенными.

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

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

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

Ответ 8

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

Самое большое преимущество пользовательского интерфейса, которое может работать в браузере, независимо от клиентской ОС. Большинство пользователей компьютеров сегодня имеют более одного компьютера, обычно подключенного в сети. Распространение различных операционных систем растет с каждым днем ​​(альтернативы окнам становятся все более крупными). Таким образом, вы получаете максимальную мобильность пользовательского интерфейса. Ваше приложение можно запустить один раз на одном компьютере и получить доступ из любого места.