三层架构学习

要点

  1. 基本框架图
  2. 框架的使用
  3. 框架的优缺点
  4. 总结

1、三层架构的基本框架

三层框架基本架构图

UI(User Interface layer:表现层):
主要是指用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据。

BLL:(Business Logic Layer:业务逻辑层):
UI层和DAL层之间的桥梁。实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等等。

DAL:(Data access layer:数据访问层):
与数据库进行交互,主要实现对数据的增、删、改、查。将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。(当然这些操作都是基于UI层的。用户的需求反映给界面(UI),UI反映给BLL,BLL反映给DAL,DAL进行数据的操作,操作后再一一返回,直到将用户所需数据反馈给用户)


2、框架的使用

2.1、建议的编码顺序:
Model层 –>数据访问层 –>业务逻辑层–>表现层
对于COMMON层,则是用到的才写

2.2、架构的使用规则

  • 层之间尽量以实体类形式传送参数,不要以变量形式传送。
  • 对于每一个数据库表(Table)都在DAL层有一个类与之对应。
  • 对于每一个数据库(DataBase)都有一个DAL与之对应。
  • 设计应该尽量减少各层数据的传递。

2.3、架构的注意事项

  • 应遵循上层调用下层, 不能跨层调用或者循环调用。
  • 层与层之间数据传送尽量使用实体类,列表数据除外。

3、三层架构的优缺点

优点:

  1. 降低维护成本,方便管理。
  2. 更加易于后期维护, 程序的可扩展性很强。
  3. 减少数据库差异带来的麻烦,DAL层中使用抽象工厂模式+反射+配置文件使得更换数据库变的简单。即使数据库变成了设计时没有考虑在内的情况,只需重新写DAL和DBHelper。
  4. 适合大型项目以及合作开发,各层相互独立,每个小组只需专注自己所负责那个模块即可。
  5. 安全性更强,三层架构使得界面,业务逻辑,数据访问相互独立。可以在各层之间加密传输数据。业务逻辑层和数据库访问层可以部署在不同的服务器上,甚至业务逻辑也可以分别部署在不同的服务器上。这样加上服务器的防火墙使得系统更加安全。

* 缺点:*

  1. 执行速度会下降,由于分层,数据的传输由原来的直接读取变成通过中间层读取,时间开销是不可忽视的。
  2. 代码量会增大。



4、总结

  • 三层架构不仅是一种架构,更是一种思想,通过降低系统之间各个模块的耦合程度,使代码更加清晰,加强了可拓展性和可复用性,以及降低代码后期的维护难度,个人认为要真正学会三层架构不仅仅是学会怎么使用,而是要理解其中的思想。



PS:博文中如有什么不对的地方恳请大家指出,谢谢~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值