Сложная логика на стороне клиента - лучше перейти на сторону сервера? - PullRequest
1 голос
/ 22 июня 2009

Я работаю со сторонним поисковым API, и мне очень нравится хранить практически все приложение на стороне браузера. XML полностью переваривается с помощью javascript, и я динамически отрисовываю сложные объекты результатов с использованием механизма шаблонов javascript. Происходит лишь несколько перезагрузок страниц, и происходит множество необычных сценариев JavaScript.

Мне кажется чистым держать все на стороне JavaScript. Это значительно упростит развертывание, и приятно иметь весь мой код в одном месте. Я пытаюсь быть настолько же строгим в кодировании с использованием javascript, как и в Java, и пока что все работает довольно хорошо. Я прилагаю усилия, чтобы работать в стиле TDD, используя тест YUI, и я уверен, что это сделает неизбежные кросс-браузерные ошибки легче выявлять и исправлять. Размер кода не мал, но он не так уж плох, и я планирую минимизировать его перед развертыванием, что должно уменьшить его примерно до 2/3 от того, что есть сейчас.

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

Ответы [ 2 ]

4 голосов
/ 22 июня 2009

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

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

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

0 голосов
/ 22 июня 2009

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

В таких дополнениях, как AJAX-пейджинг или уточнение поиска, нет ничего плохого. Но основы должны быть в любом случае.

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