Разрабатывает ли веб-приложение более эффективную работу с Ext JS / Dojo и др., Чем с HTML / JQuery? - PullRequest
2 голосов
/ 04 февраля 2012

Серверная часть в значительной степени настроена, она в основном имеет вид 2 / spring security / jpa.

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

Итак, в качестве примера, скажем, мне нужен компонент таблицы, имеющий свойства, такие как

  • сортируемые / страничные столбцы
  • изменение порядка строк и столбцов (с помощью перетаскивания)
  • встроенное редактирование ячеек таблицы
  • запоминает состояние, когда клиент повторно посещает страницу
  • легко интегрируетсясо стойками 2

Насколько я понимаю, есть 4 варианта

  1. Сделай сам, используя oldschool HTML + JQuery + Ajax
  2. Поиск плагина JQueryкоторый делает все это или
  3. подключает вместе различные плагины (например, Flexigrid + дополнительный плагин для перетаскивания)
  4. Использование инструментария JS

Должен ли я придерживаться JQuery?Или я должен пойти на полноценных JS инструментарий?У меня мало опыта работы с JQuery и JS toolkits (я не веб-разработчик).

Спасибо за помощь программисту на стороне сервера в беспорядочном мире web-ui-программирования;)

Ответы [ 4 ]

2 голосов
/ 04 февраля 2012

Наша команда потратила 6 месяцев, пытаясь дать клиенту то, что ему нужно, с помощью JQuery / UI, и мы перешли на ExtJS 4, и клиент доволен через 2 месяца.Это приложение с более чем 50 моделями.

JQuery / UI НЕ предназначен для веб-приложений.Он предназначен для веб-сайтов.Конечно, у него есть несколько хороших плагинов, но вы потратите бесчисленные часы, изучая их API и переключая свой мыслительный процесс между ними.В JQuery / UI отсутствует следующее:

  • графический дизайнер (см. Sencha Designer 2), то есть программа графического интерфейса GUI
  • сложные макеты (в ext вы можете переключать макет контейнерадля аккордеона, вкладок, мастера, привязок с одним параметром)
  • сетка (внешняя сетка поддерживает подкачку, сортировку, фильтрацию, группировку, сводку, редактирование из коробки)
  • реальные списки
  • система контроллера представления модели
  • создание шаблонов
  • хорошее управление редактором html
  • множество других вещей

сделай самодолжите и потратите деньги на ext и сэкономьте бесчисленное количество часов.

относительно сетки, которую вы упомянули, ext намного превосходит другие.Вы можете сделать то, что вы перечислили в примерно 20 красиво отформатированных строках.я не шучу.

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

2 голосов
/ 04 февраля 2012

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

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

1 голос
/ 04 февраля 2012

Краткий ответ - да. Такие фреймворки, как Ext.js, заботятся о большом количестве кода, который вы бы написали сами, если бы писали все с нуля. Эти структуры заботятся о моделях, событиях, представлениях, связи с серверами / API и т. Д.

0 голосов
/ 04 февраля 2012

Это не совсем ответный вопрос.Все зависит.

ExtJS отлично подходит для очень специфических вещей.Если вам нужны именно эти конкретные вещи, это, вероятно, самый эффективный вариант для вас.

Если пользовательский интерфейс jQuery отвечает вашим потребностям, то это ваш ответ.

Если у вас есть разработчики jQuery, возможно, придерживайтесьjQuery.

Если у вас есть люди ExtJS, рассмотрите ExtJS

и т. д. и т. д.

...