Я часто слышу, как люди хвалят веб-приложения (в отличие от настольных приложений) за их мобильность. Действительно, сделать настольное приложение доступным для нескольких операционных систем сложно. Тем не менее, я думаю, что веб-приложения должны иметь дело с проблемами переносимости одинаково хорошо, только между браузерами вместо операционных систем. Или нетрудно сделать кросс-браузерное веб-приложение?Являются ли веб-приложения более переносимыми, чем настольные приложения?
ответ
Совместимость с браузером далеко не так легко достижимо по сравнению с совместимостью с операционными системами.
Для получения подробной информации о переносимости вы можете прочитать это.
Все зависит от того, что именно вы пытаетесь построить. Некоторые инструментальные средства, такие как инструментарий QT, позволяют легко и быстро компилировать и переносить переносимость между платформами. Веб-приложения довольно модные и «в настоящее время», так как культура Сети - это все, что связано с Mashups, дистрибуцией, а что нет. Проблема в том, что это никогда не было предусмотрено, когда большинство браузеров были сделаны, хотя они ускоряются. Тонкие клиенты, такие как Google Docs, и то, что действительно не очень полезно, но не могут конкурировать с настольной версией, но затем они стараются. в основном, до того, для чего вы их используете.
Конечно, вы правы, что есть проблемы с совместимостью с браузером при написании веб-приложений. Но, как и при разработке настольных приложений, существуют фреймворки и библиотеки, которые будут использоваться для вас (например, JQuery, Google Web Toolkit, пользовательский интерфейс Yahoo).
Одна вещь, которая отличается тем, что проще с веб-приложениями, имеет постоянный внешний вид на разных платформах. Браузеры все используют CSS и, как правило, имеют последовательные элементы формы поиска (или будут использовать соответствующие элементы для платформы). С настольными приложениями сложный внешний вид и кросс-платформенный интерфейс сложнее. Одна из серьезных критических замечаний по использованию Java для кросс-платформенных графических интерфейсов заключается в том, что даже когда вы используете внешний вид платформы, она не достаточно нативная. Я не уверен, лучше ли в этом отношении такие библиотеки, как Qt.
Просто имейте в виду, что для веб-приложений существует два уровня переносимости.
Первое и самое главное, переносимость браузера. Но если приложение должно работать на других веб-серверах, есть также переносимость на стороне сервера. Большую часть времени вы решаете linux vs windows. Но есть и другие проблемы (например, требования к версии PHP).
+1 для проверки версий серверов и архитектуры. Дешевые хостинг-возможности на * nix сделали PHP отличным, в то время как ASP.NET по-прежнему требовали выделенные серверы в то время –
Если веб-приложение тщательно спроектировано в соответствии с шаблоном MVC, тогда часть представления (страницы) уже перенесена.
Если бизнес-уровень и уровень данных хорошо разработаны (не спагетти-код) и не смешиваются, их также можно легко портировать (но это верно и для настольных приложений).
В любом случае, веб-приложение уже перенесено - вы можете использовать их во многих браузерах на многих платформах.
«веб-приложение уже перенесено»: это правда? Недавно я сделал * очень * простую HTML + страницу CSS, и она уже выглядела по-разному в Firefox и Internet Explorer. Мне пришлось использовать патч, чтобы заставить его работать в обоих браузерах. –
Настольные приложения также будут выглядеть по-разному с XP и Vista, поскольку они имеют свои элементы управления по-разному. Это небольшая неприятность, которая, вероятно, может быть проигнорирована. – User
Да, вы можете часто создавать очень интерактивные и богатые веб-приложения, к сожалению, процесс разработки намного сложнее из-за использования инструментов, несовместимости браузера и т. Д. Но такие вещи, как Silverlight, упрощают работу.
Есть еще много мест, где настольные приложения гораздо более уместны.
Это правда.но нужно признать, что вы хорошо сформировали симпатичные показы веб-сайтов на IE6 - это полный кошмар: P –
Но недостатки, подобные этому, могут быть легко устранены без каких-либо затрат времени. – rahul
@phoenix - «без времени» - ты серьезно? –