学习《企业应用架构模式》(Patterns of Enterprise Application Architecture)C01 分层

本文探讨了基于C/S架构的分层概念及其重要性,介绍了表现层、领域层及数据源层的功能,并讨论了各层间的依赖关系及运行环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考 网络通讯的7层结构;

基于C/S系统结构中,分层概念更加明显;

三个基本层次:

  1. 表现层:提供服务,显示信息(处理用户请求(鼠标键盘),HTTP请求,命令行调用,批处理API);
  2. 领域层:逻辑,系统中真正的核心;
  3. 数据源层:与数据库、消息系统、事务管理器及其他软件包通讯;
层次间分离,关于依赖性的普遍原则,领域层和数据源层绝不依赖与表现层;某种测试办法是例如为WEB应用添加一个命令行界面,发现需要重复实现某些功能,则说明可能有一些本应该在领域层实现的逻辑在表现层实现了。类似的如果将数据库更换为XML文件格式。


关于各层的运行环境

  1. 通常最简单的情况是将所有东西都运行在服务器上,使用WEB浏览器的HTML前端;
  2. 加上分布式应用约束,数据源层一般在服务器上,例外的情况是断线操作,离线的客户机对数据源的修改将在之后被同步到服务器上;
  3. 胖客户情况下,表现层运行在客户端;而WEB界面情况下,表现层运行在服务器端;(当然也会有例外)
  4. 只要有可能就用WEB,只有在必需的情况下才使用胖客户方式;
  5. 领域逻辑一般在服务器端,但是如果必须在客户端运行某种逻辑,可以考虑将所有逻辑都运行在客户端——这样至少保证相关的东西在一起;
  6. 为了解决某些特殊的问题,领域逻辑被分割在客户端和服务器端(最差的选择),可以将分割到客户端的逻辑部分独立成一个小模块,使得其不依赖系统的任意其他部分;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值