三层架构
架构
架构是对大型软件系统最高级别的设计
软件系统的架构特点:
-
架构从整体到部分的最高层次的划分
-
架构一旦选定以后将难以更改
模式
-
模式是在软件实践活动中总结的有效、通用且能解决重复出现的问题的解决方案。
-
每个模式描述了一个在某种场景下不断重复发生的问题,以及该问题解决方案的核心。
模式的关键点是源于软件实践
架构
- 架构模式(也叫架构风格)是一个通用的,可重复的解决方案,用于在给定上下文的软件体系中经常出现的问题。一个架构模式常常可以分成很多个设计模式的联合使用,一个设计模式常常包含多个设计原则。
分层设计思想
在解决复杂的软件系统时,软件设计者用得最多的技术之一就是分层的设计思想。
-
分层的特点:
- 上层使用下层定义的服务
- 下层不能使用上层定义的服务
- 每一层对自己的上层隐藏其下层的实现细节
-
分层的优点:
- 降低软件系统构件之间的耦合度,实现“低耦合,高内聚”原则
- 提升系统灵活性,可以在接口相同的情况下替换某层的具体实现
- 可以增强复用度,下层可以为多个上层提供服务
-
分层的缺点:
- 过多的分层会影响系统性能
- 分层可能会带来各层的联级修改
三层架构模式
-
表现层(UI):直接跟前端打交互(一是接收前端ajax请求,二是返回json数据给前端)
-
业务逻辑层(BLL):一是处理表现层转发过来的前端请求(也就是具体业务),二是将从数据访问层或持久层获取的数据返回到表现层。
-
数据访问层(DAL):直接操作数据库(针对数据的增添、删除、修改、查找等),并将获得的数据返回到上一层(也就是业务逻辑层)。
其他架构模式:Web表现层—MVC架构模式、微服务架构...