Действие – домен – ответчик - Action–domain–responder
Действие – домен – ответчик (ADR) это программный архитектурный шаблон это было предложено Полом М. Джонсом[1] как уточнение Модель – представление – контроллер (MVC), который лучше подходит для веб-приложений. ADR был разработан, чтобы соответствовать потоку запроса-ответа HTTP коммуникации более тесно, чем MVC, который изначально был разработан для настольных программных приложений. Подобно MVC, шаблон разделен на три части.
Составные части
- В действие принимает HTTP-запросы (URL-адреса и их методы) и использует этот ввод для взаимодействия с домен, после чего он передает вывод домена одному и только одному ответчик.
- В домен может изменять состояние, взаимодействуя с хранилищем и / или манипулируя данными по мере необходимости. Он содержит бизнес-логику.
- В ответчик строит весь HTTP-ответ из доменвывод, который ему дает действие.
Сравнение с MVC
ADR не следует путать с переименованием MVC; Однако некоторые сходства все же существуют.
- MVC модель очень похож на ADR домен. Разница в поведении: в MVC Посмотреть может отправлять информацию или изменять модель, тогда как в ADR домен получает информацию только от действие, не ответчик.
- В веб-ориентированном MVC Посмотреть просто используется контролер для генерации содержания ответа, который контролер затем можно было манипулировать перед отправкой в качестве вывода. В ADR контроль исполнения переходит к ответчик после действие заканчивает взаимодействие с домен, и, следовательно, ответчик полностью отвечает за генерацию всего вывода. В ответчик затем может использовать любое необходимое представление или систему шаблонов.
- MVC контролерs обычно содержат несколько методов, которые при объединении в один класс требуют дополнительной логики для правильной обработки, например, хуки до и после действия. Однако каждое действие ADR представлено отдельными классами или закрытием. Что касается поведения, действие взаимодействует с домен так же, как MVC контролер взаимодействует с модель, за исключением того, что действие затем не взаимодействует с системой представления или шаблонов, а скорее передает управление ответчик который этим занимается.
Рекомендации
- ^ «Действие-домен-ответчик: предварительное уточнение MVC». paul-m-jones.com.
внешняя ссылка
- Первоначальное предложение Пола М. Джонса о ADR
- Внедрение ADR в Laravel, реализация паттерна в Laravel PHP рамки.
Этот компьютерное программирование -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |