专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

三层架构解析图文教程

来源:小嗨整编  作者:小嗨  发布时间:2023-09-03 03:37
摘要:三层架构就是将整个业务应用划分三层,其主要的目的就是为了“高内聚低耦合”的思想;架构就是软件架构,是有关软件整体结构与组件的抽象描述,主要用于指导大型软件系统各个方面的设计,它是对对存储在ActiveDirecto...

三层架构就是将整个业务应用划分三层,其主要的目的就是为了“高内聚低耦合”的思想;架构就是软件架构,是有关软件整体结构与组件的抽象描述,主要用于指导大型软件系统各个方面的设计,它是对对存储在Active Directory中的对象类别和属性的描述。

三层架构解析图文教程

通过几个问题,来初步的学习一下三层架构

1、什么是三层架构

在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。三层从下至上分别为:数据访问层(DAL)、业务逻辑层(BLL)、表示层(UI)。

表现层(UI):展现给用户的界面,即用户在使用一个系统的时候他的所见所得。

业务逻辑层(BLL):对数据层的操作,对数据业务逻辑处理。

数据访问层(DAL):对数据库的操作,数据的增添、删除、修改、查找等。

2、应用场景——为什么要用三层架构?

解析:

不是所有的程序都需要使用三层架构,没必要把简单的问题复杂化。

先来说一下解耦,举例:修电脑

电脑硬盘坏了?我们要做的就是换掉电脑硬盘

内存条坏了?只要换内存条就好

这些部件出现问题,都不会影响别的部件的正常使用,这个就是让他们之间解耦。而和电脑不同的收音机,任何部件坏了,都会影响别的部件,这个体现的就是他们之间的耦合比较高。从这个例子里面就可以看出解耦的好处,在三层中就是用的解耦的思想。

3、三层作用

数据访问层:从数据源加载(Select),写入(Insert/Update),删除(Delete)数据。仅限于和数据源打交道,让程序简单明了。

显示层(UI):向用户展现特定业务数据,采集用户的输入信息和操作。

原则:用户至上,兼顾简洁。

业务逻辑层(BLL):从DAL中获取数据,以供UI显示用,从UI中获取用户指令和数据,执行业务逻辑、从UI中获取用户指令和数据,通过DAL写入数据源。

4、各个层之间的关系:

UI->BLL->UI:UI提供数据指令到业务逻辑,若自己可以搞定,则直接反馈到UI

UI->BLL->DAL->BLL->DAL:UI提供用户指令和数据,提出请求并搜集一定的数据BLL,BLL处理不了时

5、三层联系——引用

以登陆为例子,说明三层之间的引用关系:

实体层(entity):定义的用户名和密码。

U层:向对应的文本框中输入账号和密码

B层:判断U层输入的账号和密码是否存在。

D层:连接数据库的语句,查询数据库。

他们之间的联系是通过实体传递来进行的,。

DAL所在程序集不引用BLL和UI

BLL需要引用DAL

UI直接引用DAL,可能引用BLL

非常忌讳互相引用,为了避免这个问题所有出现了实体层(业务数据模型,里面的数据和数据库的有所差异)

应用原则:

DAL只提供基本的数据访问,不包含任何业务相关的逻辑处理。UI只负责显示和采集用户操作,不包含任何的业务相关的逻辑处理,BLL负责处理业务逻辑,通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理。处理完成后,返回必要数据给UI。

6、各层是如何调用的

表示层(UI)是用户需要的界面,用户有什么需求都是在这个上面进行的改动,一旦有改动,首先U层向B层发送用户请求的说明,到达B层,B层再将U层的用户请求发送到D层,D层接受到用户请求的指令后,对它进行处理,发送数据反馈到B层,B层再发给U层,将这一变化反应出来。

举例:

小菜和大鸟吃羊肉串的例子,小菜和大鸟就是用户,服务员为表示层(U层),烤肉师父为业务逻辑层(U层引用B层的方法或者参数),老板娘为数据访问层(D层),负责给烤肉师父从库房拿烤串。大鸟点了羊肉串5串(参数),服务员把羊肉串5串(参数传递)传递给烤肉师父(数据请求),烤肉师父再传递给老板娘(对参数进行处理),老板娘得到请求后,拿羊肉串给烤肉师父(数据反馈),烤肉师父将烤好的羊肉串给服务员(数据反馈),服务员再将5串羊肉串给大鸟(U层展现出来),他们之间通过调用来实现联系。

7、三层PK二层二层架构:

业务逻辑简单,没有真正的数据存储层

三层架构:

抽象出业务逻辑层,当业务复杂到一定程度,当数据存储到相应的存储介质,数据存储脱离开业务逻辑,把业务逻辑脱离开UI单独存在,UI只需要呼叫业务访问层,就可以实现跟用户的交互。

三层的好处:

1、开发人员可以只关注整个结构中的其中某一层;

2、可以很容易的用新的实现来替换原有层次的实现;

3、可以降低层与层之间的依赖;

4、有利于标准化;

5、利于各层逻辑的复用。

6、结构更加的明确

7、在后期维护的时候,极大地降低了维护成本和维护时间。

这几点的中心思想就是“高内聚,低耦合”,类之间的耦合越弱,越有利于复用,一个处在弱耦合的类被修改,不会对有关系的类造成波及。

以上就是我们为大家讲解的对三层的简单认识, 想了解更多精彩教程请继续关注我们网站!


本文地址:网络百科频道 https://www.eeeoo.cn/wangluo/1047743.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


网络百科
小编:小嗨整编
相关文章相关阅读
  • 泰剧迷app官网入口(泰剧迷app使用教程)

    泰剧迷app官网入口(泰剧迷app使用教程)

    泰剧迷app官网入口(泰剧迷app使用教程)随着泰剧在国内的流行,越来越多的观众想要找到一款能观看泰剧的软件。泰剧迷App就是一款深受剧迷喜爱的泰剧播放器。本文将为您详细介绍泰剧迷App的官网入口以及使用教程,让您轻松观看喜欢的泰剧。泰剧迷...

  • 正方形手工折纸教程(手工折纸教程简单又漂亮)

    正方形手工折纸教程(手工折纸教程简单又漂亮)

    正方形手工折纸教程(手工折纸教程简单又漂亮)手工折纸是一种充满创意和乐趣的技艺,通过简单的折叠,就能让纸张变成各种各样的形状。今天,就让我来为大家介绍一款简单又漂亮的正方形手工折纸教程,让你轻松掌握制作技巧。一、准备材料1.彩色纸张(推荐使...

  • 小数点除法竖式教程(百位除法竖式教程)

    小数点除法竖式教程(百位除法竖式教程)

    小数点除法竖式教程(百位除法竖式教程)小数点除法竖式是指在除法运算中,被除数和除数均含有小数点时,按照一定规则进行竖式计算的方法。百位小数点除法竖式是指被除数和除数的整数部分均为百位数的除法运算。一、百位小数点除法竖式步骤1.将被除数和除数...

  • catia教程入门教程(catia教程在哪可以看)?

    catia教程入门教程(catia教程在哪可以看)?

    catia教程入门教程(catia教程在哪可以看)?CATIA作为一款广泛应用于机械设计、汽车制造、飞机制造等行业的3D建模软件,具有强大的功能和优越的建模体验。为了让初学者快速上手,本文将为您提供一份详细的CATIA入门教程。CATIA是...

  • 水彩画教程步骤(水彩画教程初学者简单)

    水彩画教程步骤(水彩画教程初学者简单)

    水彩画教程步骤(水彩画教程初学者简单)下面带来比较简单的初学者水彩画教程步骤。第1步:铅笔削尖,画出建筑物和山的轮廓形。第2步:用黑色针管笔描边,建筑物的窗户排线;树木和花草随意的笔触带过即可。第3步:水彩笔调114号永固浅绿画塔顶的颜色;...

  • 打领带教程只需四步(打领带教程图片)

    打领带教程只需四步(打领带教程图片)

    打领带教程只需四步(打领带教程图片)领带的打法有几十种,从简单到复杂,常见到不常见的都有。在这里,教给大家一种十秒快速打领带的技巧,以及适合初学者的四种简易打法。1.四手结打法。四手结的打法和系红领巾有点相似,打出来的结小巧,看起来有点不太...

  • 金刚结手绳编织教程(金刚结手绳编织图片)

    金刚结手绳编织教程(金刚结手绳编织图片)

    金刚结手绳编织教程(金刚结手绳编织图片)金刚结是藏传佛教特有的一种护身符,代表:九尊、金刚,它是经过高僧大德加持以后对人、对物赋有灵气的一种法器。金刚结的寓意是一切佛母爱护着我们犹如自己的母亲,一切护法神众在我们的周围,帮助我们遣除诸违缘,...

  • 碧蓝航线ios反和谐2024(碧蓝航线ios反和谐教程)

    碧蓝航线ios反和谐2024(碧蓝航线ios反和谐教程)

    碧蓝航线ios反和谐2024(碧蓝航线ios反和谐教程)碧蓝航线是一款二战题材的战舰少女战斗养成手游。游戏中包括丰富的角色养成、舰队搭配、战斗策略、任务系统等玩法。下面带来碧蓝航线ios反和谐2024教程:碧蓝航线ios反和谐教程1.打开游...

  • 周排行
  • 月排行
  • 年排行

精彩推荐