Каковы шаблоны в разработке html / javascript RIA? - PullRequest
4 голосов
/ 16 июля 2009

При создании больших приложений с графическим интерфейсом на других языках, таких как C # или Java, у нас есть различные шаблоны, такие как MVP, MVC, MVVM, и даже полные пакеты инструкций, такие как Prism (WPF / Silerlight), которые помогают нам поддерживать наш код поддерживаемым, расширяемым и сохранить сложность приложения на разумном уровне.

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

Каковы преимущества и недостатки создания большого приложения RIA в формате html / javascript (для создания таких приложений, как Gmail, Google Calender, Google Docs)?

Ответы [ 2 ]

3 голосов
/ 16 июля 2009

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

Чего вы НЕ должны делать, так это пытаться избежать разработки на JavaScript напрямую. Конечно, есть много Frameworks, которые, кажется, помогают вам обойти часть JS (GWT и .NET Framework AJAX работают довольно хорошо), но вы никогда не сможете использовать весь потенциал самого языка и Ваше многофункциональное интернет-приложение навсегда будет привязано к вашему серверному языку / фреймворку программирования и его возможностям, что вовсе не является необходимым, и, на мой взгляд, плохим дизайном. Я бы максимально отделил программирование на стороне сервера от программирования клиента. В отличие от веб-приложений старой школы, вы можете запрашивать и обрабатывать любые данные асинхронно, поэтому вашему веб-серверу не нужно вообще генерировать (я имею в виду генерацию HTML с языком на стороне сервера) любой HTML. С разделением между данными на стороне сервера и представлением на стороне клиента вы потеряете много сложности, которую разработка RIA может принести с другими подходами (например, попытка использовать ее в одной из старомодных инфраструктур MVC на стороне сервера).

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

1 голос
/ 16 июля 2009

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

Поскольку вы из большого толстого, жесткого, статичного, объектно-ориентированного мира на основе Java CASS, я бы посоветовал взглянуть на функциональные языки программирования, такие как lisp и haskell, чтобы взглянуть на шаблоны проектирования этих если вы ищете что-то свежее и интересное. Javascript может приспосабливаться к шаблонам функционального языка или объектно-ориентированным шаблонам.

Прочтите javascript.crockford.com, чтобы дать вам представление о том, какие вещи возможны в javascript и какие шаблоны стилей имеют смысл.

Дизайн приложения практически одинаков для всех языков.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...