为什么要使用三层?
分层的目的即为了“高内聚,低耦合”的思想。
内聚就是一个模块内各个元素彼此结合的紧密程度,高内聚就是一个模块内各个元素彼此结合的紧密程度高。换句话说,所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一职责原则。
耦合,也就是块间联系,指软件结构中各模块间互连紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息,对于低耦合换句话说一个完整的系统,模块与模块之间,尽可能的使其独立存在,也就是说,让每个模块,尽可能的独立完成某个特定的子功能,模块与模块之间的接口,尽量少而简单。
高内聚低耦合的好处体现在系统持续发展的过程中,高内聚,低耦合的系统具有更好的重用性,维护性,扩展性,可以更高效的完成系统的维护开发,持续的支持业务的发展,而不会成为业务发展的障碍。
三层是什么?
三层架构通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
表示层
通俗讲就是展示给用户的界面,即用户在使用一个系统的时候他的所见所得。位于最外层(最上层),离用户最近。对用户的请求接收,以及数据的返回,为客户端提供应用程度的访问,或者说用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。
业务逻辑层
系统主要功能和业务逻辑都在业务逻辑层进行处理。是系统架构中体现核心价值的部分,关注点主要集中在工作业务规则的制定、业务流程的实现、数据访问、合法校验等与业务需求有关的系统设计。
具体内容包括用于做一些有效验证的工作,以更好的保证程序运行的健壮性。如完成数据添加、修改和查询业务等;不允许指定的文本框中输入空字符串,数据格式是否正确以及数据类型验证;用户权限的合法性判断等;通过以上的诸多判断以绝对是否将操作继续向后传递,尽量保证程序的正常运行。
业务逻辑层除了对数据层的操作外,还包括对数据层的操作,对数据业务逻辑处理。可以说业务逻辑层扮演里两个不同的角色,对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。
数据层
主要对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务,简单的说就是实现对数据表的增、删、改、查等操作。
分享到:
相关推荐
电子版的Python GUI设计之Tkinter菜鸟编程,一般是扫描图片组成的PDF或网页版 ,不支持查找操作,特整理成Word版并分享。
很经典的c语言实例编程 适合初学者 。。
何勤老师的最新著作,编程原理,编程思路讲得很好.
用三层泛型集合把数据库数据绑定到数据控件上
C语言基础十:移位(菜鸟编程教学10)
本资料为本人学习matlab编程(第二版)-菜鸟入门教材时对其课后习题(1-4章)所编的程序,以及书本上的源程序。适用于才开始学习matlab编程
MATLAB初学者教程 MATLAB编程 菜鸟入门(清晰版)
MATLAB编程(第二版)-菜鸟入门教材,PDF。
这本书手把手教你使用xcode开发cocoa程序,菜鸟必备
MATLAB编程-菜鸟入门(清晰版)MATLAB编程-菜鸟入门(清晰版)MATLAB编程-菜鸟入门(清晰版)
:简单循环与时间1(菜鸟编程教学5).mobi
MC9S12XS128_菜鸟学习如何对AD功能模块编程.pdf
python菜鸟快乐游戏编程_pygame 演讲人 202x-11-11 2020 Python菜鸟快乐游戏编程-pygame-课件PPT模板全文共14页,当前为第1页。 目录 contents 第4章pygame基础知识 第5章植物大战僵尸 第1章python菜鸟快乐游戏编程_...
挺不错的经验,值得菜鸟认真学习,祝学习进步
ASP编程菜鸟入门教程 ASP编程其实很简单,简单的数据类型,简单的语法,加上几个内建对象和内置组件,基本上就是ASP的全部内容。 本专题是为喜欢ASP,想用ASP设计自己的站点的爱好者准备的,对专业人士而言简单了...
易语言教程菜鸟专版
FSM初学者教程 FSM编程-菜鸟入门(清晰版)