MVC模式的替代者ADR

栏目: 后端 · 发布时间: 7年前

内容简介:ADR是Action-Domain-Responder的简称,动作-领域-响应者是将HTTP客户端和HTTP服务器端应用程序之间的用户交互组织为三个不同的角色:1. 动作Action是连接Domain和Responder的逻辑。它从HTTP请求收集的输入并调用Domain,然后调用Responder构建HTTP响应所需的数据。2.领域Domain是构成应用程序核心的领域逻辑的入口点,根据需要修改状态和持久性,这可以是事务脚本、服务层、应用程序服务或类似的东西。

ADR是Action-Domain-Responder的简称,动作-领域-响应者是将HTTP客户端和HTTP服务器端应用程序之间的用户交互组织为三个不同的角色:

MVC模式的替代者ADR

1. 动作Action是连接Domain和Responder的逻辑。它从HTTP请求收集的输入并调用Domain,然后调用Responder构建HTTP响应所需的数据。

2.领域Domain是构成应用程序核心的领域逻辑的入口点,根据需要修改状态和持久性,这可以是事务脚本、服务层、应用程序服务或类似的东西。

3.响应者Responder是界面显示逻辑,根据从Action接收的数据构建HTTP响应,它处理状态代码、标题和cookie、内容、格式和转换,模板和视图等。

它们之间协作是这样:

1. Web处理程序接收HTTP请求并将其分派给Action。

2. Action调用Domain,后者从HTTP请求收集任何所需的输入到Domain中,作为Domain的入参。

3. 然后,Action调用Responder,构建HTTP响应所需的数据(通常是HTTP请求和域结果,如果有的话)。

4. Responder是构建一个HTTP响应,使用的是Action传给它的数据。

5. Action将HTTP响应返回到web处理器,向客户端发送HTTP响应。

对于每个Action类/闭包,都有一个Responder类/闭包。

ADR不是全新的,而是MVC的一种改进定义。它更好地描述了Web系统中的交互,并且可能比原始MVC更好地分离了关注点。

MVC最初是桌面图形用户界面的设计模式,它有许多不同的解释,包括许多相似/不同的后继者,如MVP或MVVM。然而,MVC们并没有很好地描述服务器端是web-app架构下的情形,这就是pmjones为了 Web目的而改进术语MVC的原因。

在传统的MVC中,控制器Controller通常包含多个动作方法,然后传入的请求就被分派给这些动作方法,控制器本身被忽视了,这就是为什么在ADR中每个Action都由单类或闭包表示。


以上所述就是小编给大家介绍的《MVC模式的替代者ADR》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

机器学习系统设计

机器学习系统设计

[德] Willi Richert、Luis Pedro Coelho / 刘峰 / 人民邮电出版社 / 2014-7-1 / CNY 49.00

如今,机器学习正在互联网上下掀起热潮,而Python则是非常适合开发机器学习系统的一门优秀语言。作为动态语言,它支持快速探索和实验,并且针对Python的机器学习算法库的数量也与日俱增。本书最大的特色,就是结合实例分析教会读者如何通过机器学习解决实际问题。 本书将向读者展示如何从原始数据中发现模式,首先从Python与机器学习的关系讲起,再介绍一些库,然后就开始基于数据集进行比较正式的项目开......一起来看看 《机器学习系统设计》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

MD5 加密
MD5 加密

MD5 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具