Есть ли какие-либо преимущества для архитектуры MVC с ExtJS, когда клиент очень тонкий? - PullRequest
1 голос
/ 17 февраля 2012

Мы только начали использовать ExtJS 4 от Sencha в нашем проекте и следовали документации для построения архитектуры MVC на клиенте. Со временем я склонен думать, что это больше проблем, чем стоит, потому что:

  • Мы выполняем рендеринг в разные представления (ExtJS - одно), поэтому мы сохраняем всю логику в контроллерах на сервере, чтобы минимизировать дублирование
  • Из-за этого в модульном тестировании не так много, так как очень мало логики. Мы делаем функциональные тесты с Selenium

Каковы преимущества сохранения архитектуры MVC на таком тонком клиенте? Любые, которые не очевидны сейчас, но могут быть в будущем, когда мы начнем разрабатывать компоненты для него?

1 Ответ

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

По моему опыту работы с Ext JS 4, использование MVC в целом доставляет больше хлопот, чем оно того стоит.

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

Основная проблема заключается в том, что вы начинаете нуждаться в одном и том же компоненте на разных страницах (напримеркомбинированный список со списком сотрудников).Возможно, вам понадобятся разные слушатели, в зависимости от того, на какой странице он находится, но по большей части он будет везде одинаковым.Достаточно просто создать Store, который загружает данные при инициализации, а затем определить подкласс любого необходимого вам компонента, для которого установлены значения по умолчанию.Тогда все, что вам нужно сделать, - это дать ему storeId и любых слушателей, которых вы хотите, и все, что вам нужно.

...