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

Вид: 20729|Ответ: 1

[ASP.NET] Шаблон фреймворка MVC мертв.

[Скопировать ссылку]
Опубликовано 06.12.2014 22:17:21 | | | |
Режим MVC: Model View пытается управлять контроллером, который является текущим основным режимом и используется как базовый способ входа в серверное программное обеспечение для изучения и освоения, а основной фреймворк Struts 1/2 JSF Wicket фактически поддерживает режим MVC.

Однако с постоянной популярностью B/S и интернет-приложений, Web 2.0 и большого количества частых интерактивных приложений, таких как социальные сети и игры, относительно статичный режим MVC больше не подходит для высокоинтерактивных и ориентированных на поведение приложений.

Само моделирование доменной системы DDD уделяет больше внимания структуре, его значение объект и сервер также являются своего рода структурным разделением, но оно не подчеркивает важность задач и поведения объектов, и это единственное отличие между объектами и базами данных.

НапротивДизайн объектов: роли, обязанности и сотрудничествоВ книге предполагается, что объект действительно играет определённую роль, и эта роль несёт ответственность, а затем определённое интерактивное поведение будет реализовано в определённом контексте сцены, что подробно обсуждалось в Jdon:
DCI, доменная модель, несколько идей для предметных событий
Асинхронное архитектурное мышление: реализуйте моделирование доменов с помощью Akka

В книге изложены четыре основных недостатка централизованных контроллеров, и контроллеры MVC фактически относятся к этому централизованному стилю контроллеров:

1. Логика управления может быть слишком сложной. Контроллеры могут быть сложными, и многие люди часто пишут бизнес-код в контроллерах Action от Struts.Все действия — это действия, а некоторые действия — почти тысячи строк.

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

3. Объекты могут косвенно связываться через действия своего контроллера. Объекты косвенно связываются между собой через действия контроллера, один объект запрашивается в контроллере, затем копируется в другой, и оба объекта связываются вместе.

4. Единственная интересная работа — это контроллер.

Контроллер MVC — это своего рода медиаторный режим, но также централизованный контроллер; это главное отличие от режима наблюдателя: режим медиатора инкапсулирует коммуникацию, тогда как режим наблюдателя — децентрализованную связь, с точки зрения коммуникации контроллер также имеет свои недостатки: легко превратиться в большой и полностью связанный концентратор, всё это предназначено дляООЭто не терпимо.

Архитектура DCIЭто новая концепция, появившаяся совсем недавно и рассматривающая программное обеспечение с новой точки зрения, совпадающая с проектированием, основанным на долге и правойDDDразвитие и улучшение.

DCI — это сокращение от Data Context Interactions, и его важный вклад заключается в выдвижении концепции сцен, которая не упоминается в книге «Развитие, основанное на долге», где MVC лишь отрицает MVC, раскрывает его проблемы и не предлагает альтернативыDCIЭто альтернативная архитектура MVC, и DCI заменяет MVC сценариями для замены контроллеров, как показано на рисунке ниже (изображение).Оригинальный английский TheDCI Architecture: A New Vision of Object-Oriented Programming):

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

Недавно кто-то поднял этот вопросКонтекст сцены — это новый тип объекта, сцену можно не только заменить.SOAВеб-сервисы также могут заменить контроллеры MVC.

Лично я считаю, что новая иерархическая архитектура в будущем может выглядеть следующим образом:
Просмотр --> Модель контекста ---> домена ---> компонента/репозитория

Режим MVC мёртв.





Предыдущий:Коллекция широко используемых CAD-напольных блоков доступна для бесплатного скачивания
Следующий:Многопоточность ставит масштабируемость в тупик
Опубликовано 07.12.2014 17:23:04 |
Читать и отвечать — это добродетель
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com