Предположим, у меня есть метод RegisterUser(), который содержит больше кода, чем просто вставка записи в базу данных. Например, возможно, есть роли, данные о местоположении и т. Д. Или у меня есть метод SendInboxMessage(), который отправляет сообщение для входящих сообщений пользователю для сайта CMS, например ... Помня, что SendInboxMessage больше, чем просто взаимодействует с «Входящие». Он должен взаимодействовать с объектами пользователя, объектами сообщений, объектами папки «Входящие» и т. Д. Опять же, просто приводим пример чего-то сложного с большим количеством объектов.Где разместить сложные операции в рамках MVC?
Где бы это было похоже на традиционный MVC?
(Примечание: Это не язык конкретных Глядя на более широкий ответ здесь.)
Спасибо!
Спасибо, Фрэнк. У вас есть примеры или литература, где я могу больше узнать об этом? Например. что подразумевается под «разоблачением методов по контракту» – Ricky
Нет проблем. У Мартина Фаулера есть интересные статьи о различных шаблонах архитектуры графического интерфейса на его домашней странице: http://martinfowler.com/eaaDev/uiArchs.html. – Frank
«Методы раскрытия по контракту» означает, что 1: Доменные службы должны быть доступны на уровне презентации. 2: вызов метода из уровня презентации должен адресовать (технический) интерфейс и, возможно, должен отвечать определенным предварительным и постконфиденциальным условиям. – Frank