«Перед вами появится полноценный рабочий стол, вроде того что находится в MS Windows. Окна, кнопка Start, графики и многое другое доступно вам. Не правда ли, интересные возможности?»
Вот когда я вижу такое в качестве примера работы контролов для веба, я сразу ухожу и больше никогда не возвращаюсь.
Веб — это веб, не надо впихивать в него десктопные парадигмы.
Это вам так кажется. А в реальности чем больше мы пытаемся сделать из браузера десктопный клиент с присущим ему поведением, тем больше кода мы тратим на поддержание этой видимости, вместо того, чтобы тратить его на бизнес.
Посмотрите на успешные веб-интерфейсы — хотя бы на тот же гугль. Он не имеет ничего общего с десктопной парадигмой.
Ну и да, для корпоративного приложения «не зависеть от ОС» — это достаточно смешное требование. В реальности там обычно наоборот, хотят как можно более плотную интеграцию с существующими сервисами, и тут как раз боаузер только мешает.
Вот что бы не тратить «на поддержание этой видимости» и заняться бизнес-логикой и удобно использовать подобные фреймворки.
Гугль != интранет приложению. В Гугле есть команда отвечающая за интерфейс и другая, отвечающая за логику. Они могут себе это позволить.
Извините но «плохому танцору» может и браузер мешать. Кроме независимости от ОС вы забываете что веб поддерживать и распространять проще, не говоря уж о модных нынче облаках.
«Вот что бы не тратить «на поддержание этой видимости» и заняться бизнес-логикой и удобно использовать подобные фреймворки.»
Ну вот опыт показывает, что пока ни один подобный фреймворк, в итоге, не избавил от необходимости бороться с природой веба для того, чтобы имитировать там десктоп.
«Извините но «плохому танцору» может и браузер мешать.»
Несомненно. Но в реальности одна интеграция с ЭЦП (а это реальное требование в корпоративной среде) и корпоративной же аутентификацией (например, AD) уже стоят дикого геморроя.
«Кроме независимости от ОС вы забываете что веб поддерживать и распространять проще, не говоря уж о модных нынче облаках.»
Ну, облака тут вообще не при чем, используйте SOA и будет вам счастье. А что касается легкости поддержки и распространения — так в корпоративной среде это тоже не проблема, по большому счету.
Ну и да, я ничего не имею против веб-приложений в корпоративной среде, я просто не понимаю, зачем их делать по модели десктопных.
Хорошо, если вы это называете обоснованием, то я также «обосную».
Во-первых, если мы берем интерфейс, то с помощью html+javascript построить можно все что угодно, абсолютно не прилагая усилий. Тот же xaml, например, для построения классного представления использует преимущества декларативной разметки(во-многом заимствованной у html), а css и javascript легко справляются с любой анимацией.
Во-вторых, отделение логики на сервере от шаблонов интерфейса гораздо проще и приятнее делать в случае с веб-приложением.
И в третьих, это действительно проще.
Приложение, особенно корпоративное, состоит не только из интерфейса. В частности, корпоративным приложениям свойственным всякие «мелкие детали», навроде интеграции с корпоративной политикой безопасности, сторонними системами, ЭЦП и так далее. И вот со всем этим в браузере крупные проблемы.
Со сторонними системами интеграция просто отличная, особенно, если делать правильно и через сервер, потому как клиентская часть это только видимость, так и должно, кстати, быть
А вот это уже специфические функции, которые да, являются недостатком данного подхода. Впрочем, можно сделать и это. Тут недавно был отчет с конференции, там был довольно интересный доклад по NPAPI, NaCl…
Но сейчас тенденция в разработке именно в развитии веба и переносу идей и приложений с десктопа в веб (облако) т.к. в подавляющем количестве задач плюшек от использования именно веба больше.
Но еще раз подчеркну, что всегда надо исходить из требований задачи и желаний заказчика.
«Есть принципиальные различия между десктопными и веб-приложениями, здесь надо смотреть исходя из требований задачи.»
Я знаю. Непонятно, зачем реализовывать web-приложение с интерфейсом десктопного.
«Но сейчас тенденция в разработке именно в развитии веба и переносу идей и приложений с десктопа в веб (облако)»
Угу. И если посмотреть на эти приложения, то они по большей части используют именно веб-интерфейс (или полноценные толстые клиенты).
Урок 1. Знакомимся с Ext.NET