2012-01-18 5 views
3

Есть много статей, доступных для объяснения архитектуры дизайна приложения MVC, некоторые содержит бизнес-слои, слои домена и т.д.Понимать архитектуру приложения MVC

Я хотел бы знать каждый & каждые условия и то, что должно быть внутри, что слой?

Presentation.Web: приложение MVC здесь идет
Business.Domain: ??
Infrastructure.Data: ??

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

ответ

2

Я попытаюсь объяснить это в технологии нейтрального формате:

MVC короток для модели, вида, контроллера.

===========================================

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

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

Эти характеристики называются свойствами в классах. Персонаж действует как класс, содержащий все эти свойства.

===========================================

Теперь, говоря о представлении, Просмотр - это то, что отображает информацию о конкретной модели.

Например: У нас есть бар здоровья, отображающий общее здоровье и текущее состояние здоровья.

Некоторым может быть интересно увидеть форму сердца для представления здоровья вместо красного бара.

Разработчик начинает создавать другое другое представление, но по-прежнему использует ту же модель. Речь идет о повторном использовании!

Повторное использование этой модели для отображения ее свойств разными способами!

============================================

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

Например: Итак, предположим, что у героя есть полное здоровье, Враг атакует его ...

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

Когда ваш персонаж выпивает зелье здоровья, , регулятор увеличивает ваш персонаж в настоящее время.

==========================================

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

Или

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

Вы также можете посмотреть на этот link

0

Ниже можно объяснить:

MVC архитектуры

Главная Цель архитектуры MVC - отделить бизнес-логику и данные приложения от данных презентации до пользователя.

Вот почему мы должны использовать шаблон проектирования MVC.

Они являются resuable: Когда проблемы повторяются, нет необходимости изобретать новое решение, мы просто должны следовать шаблону и при необходимости адаптировать его. Они выразительны: с использованием шаблона проектирования MVC наше приложение становится более выразительным.

1). Модель: объект модели знает обо всех данных, которые необходимо отобразить. Это модель, которая знает обо всех операциях, которые могут быть применены для преобразования этого объекта. Он отображает только данные приложения. Модель представляет данные предприятия и бизнес-правила, регулирующие доступ к этим данным и их обновление. Модель не знает о данных презентации и о том, как эти данные будут отображаться в браузере.

2). Вид: представление представляет собой презентацию приложения. Объект представления относится к модели. Он использует методы запроса модели для получения содержимого и визуализации. Представление не зависит от логики приложения. Он остается таким же, если в бизнес-логике есть какие-либо изменения. Другими словами, мы можем сказать, что ответственность за сохранение согласованности в ее представлении зависит от того, как модель изменяется.

3). Контроллер: всякий раз, когда пользователь отправляет запрос на что-то, он всегда проходит через контроллер. Контроллер отвечает за перехват запросов из представления и передает его в модель для соответствующего действия. После того, как действие было предпринято над данными, контроллер отвечает за направление соответствующего представления пользователю. В графических интерфейсах представления и контроллеры часто работают очень тесно друг с другом.

http://www.roseindia.net/struts/mvc-architecture.shtml

Смежные вопросы