Состояние в архитектуре MVC?

Кажется, что существует тонна возможных конфигураций/архитектуры MVC (MVC, MVVM, MVP, HMVC, PAC, представление документа...). Там кто-либо в настоящее время принимается 'лучше всего' или современная архитектура MVC? Что думает новейшее? Или действительно ли все это - дискуссия и/или просто связанный с тем, какой бы ни платформа каждый разрабатывает на (например, MVVM для WPF)?

(Конкретно я интересуюсь MVC, как применено в приложениях рабочего стола/толстого клиента.)

7
задан 24 June 2010 в 02:46
поделиться

2 ответа

Нет. Вы не получите никакого соглашения о том, какая архитектура является "принятой в настоящее время" лучшей.

Это определенно не MVC или MVP. Эти архитектуры возникли в конце 70-х и начале 90-х годов соответственно. MVP является усовершенствованием MVC, но за двадцать лет, прошедших с момента изобретения MVP, стало ясно, что он страдает очень многими недостатками. Вот почему появляется так много новых конкурирующих архитектур.

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

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

Мне больше всего нравится MVVM. Мне нравится тот факт, что «модель представления» концептуально представляет собой просто «модель» со всеми аспектами любой другой модели, за исключением того, что она (обычно) никогда не записывается на диск. Фактически, если бы это не сбивало с толку, "MVVM" можно было бы переименовать в "MV", поскольку он в значительной степени избавляет от необходимости в чем-либо еще, кроме представлений и моделей. MVVM можно использовать не только с WPF, но и с любой платформой представления, которая имеет расширенные возможности привязки данных. К сожалению, это исключает GWT и Какао. Мне также нравится MVVM, потому что он имеет тенденцию полностью устранять избыточный или повторяющийся код.

MVVM - не единственный продвинутый игрок в городе. Аспектно-ориентированные подходы и командные архитектуры, построенные на традиционных моделях и представлениях, также имеют схожие устремления.

Суть в том, что это все еще активно исследуемая область , и в настоящее время не было достигнуто консенсуса. MVVM - самая популярная из новых архитектур, но не единственная. Жюри пока еще нет.

Примечание: Чтобы получить некоторое представление о том, как новые архитектуры являются улучшениями по сравнению с MVC и MVP, просмотрите это сравнение Какао и WPF , начиная с заголовка «Повторяющийся код» и заканчивая конец раздела «Командная архитектура».

6
ответ дан 7 December 2019 в 03:11
поделиться

Новейшие архитектурные исследования, проводимые в наши дни для толстых клиентов, проводятся компанией Google. с архитектурой MVP.

Прочтите статьи GWT о MVP
http://code.google.com/webtoolkit/articles/mvp-architecture.html
http://code.google.com/webtoolkit/articles/mvp -architecture-2.html

Также посмотрите этот http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/8b0ae5eaf84d8bc2?hide_quotes=no

Также ознакомьтесь с этим Видео на YouTube http://www.youtube.com/watch?v=PDuhR18-EdM

Что касается ответа на ваш вопрос, за исключением того, что MVC отчасти устарел, я думаю, что это очень субъективно. путь идти. Это не зависит от платформы, за исключением того, что выбранная вами структура может определять архитектуру: (

3
ответ дан 7 December 2019 в 03:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: