.NET三层架构的概念,作用及区分方法

开发 后端
本文介绍了.NET三层架构的概念,区分方法以及各自的作用与解释。所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。

.NET三层架构的概念

◆用户界面表示层(USL)

◆业务逻辑层(BLL)

◆数据访问层(DAL)

BLL将USL与DAL隔开了,并且加入了业务规则

各层的作用

1:数据数据访问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务.

2:业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。

3:表示层:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成:aspx, 如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。

.NET三层架构具体的区分方法

1:数据数据访问层:主要看你的数据层里面有没有包含逻辑处理,实际上他的各个函数主要完成各个对数据文件的操作。而不必管其他操作。

2:业务逻辑层:主要负责对数据层的操作。也就是说把一些数据层的操作进行组合。

3:表示层:主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。

.NET三层架构概念的解释

所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。 三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交换.

开发人员可以将应用的商业逻辑放在中间层应用服务器上,把应用的业务逻辑与用户界面分开。在保证客户端功能的前提下,为用户提供一个简洁的界面。这意味着如果需要修改应用程序代码,只需要对中间层应用服务器进行修改,而不用修改成千上万的客户端应用程序。从而使开发人员可以专注于应用系统核心业务逻辑的分析、设计和开发,简化了应用系统的开发、更新和升级工作。

那么为什么要应用“中间业务层”呢?举些例子:

我们假设有一段登录代码,则可以这样处理Web程序,外观层负责接收前台页面的数据,然后传给中间层,中间层对数据进行处理,比如格式化,防SQL注入等等一些,这样的数据再传给数据访问层然后与数据库进行操作,比如与数据库的用户名和密码匹配等等一些代码。

“中间业务层”的用途有很多,例如:验证用户输入数据、缓存从数据库中读取的数据等等……但是,“中间业务层”的实际目的是将“数据访问层”的最基础的存储逻辑组合起来,形成一种业务规则。例如:“在一个购物网站中有这样的一个规则:在该网站第一次购物的用户,系统为其自动注册”。这样的业务逻辑放在中间层最合适:

在“数据访问层”中,最好不要出现任何“业务逻辑”!也就是说,要保证“数据访问层”的中的函数功能的原子性!即最小性和不可再分。“数据访问层”只管负责存储或读取数据就可以了。

以上就是.NET三层架构的概念,作用及区分方法。

【编辑推荐】

  1. ASP.NET运行环境搭建浅析
  2. ASP.NET操作Excel注意事项浅析
  3. ASP.NET笔试题小汇总
  4. PHP ASP.NET的较量
  5. ASP.NET AJAX组成部分的浅析
责任编辑:yangsai 来源: 博客园
相关推荐

2009-07-28 17:25:14

ASP.NET三层结构

2011-04-19 13:53:41

三层架构

2013-01-09 11:00:20

架构开发三层架构.NET架构

2012-02-03 09:44:33

.NET

2009-07-28 15:08:50

MVC三层架构实例

2009-08-26 18:20:42

三层架构

2010-01-13 09:20:22

三层交换机作用

2012-09-04 09:41:00

三层架构架构EF

2009-07-30 13:07:49

ASP.NET中的三层

2010-01-11 16:26:42

三层交换机作用

2018-03-08 15:30:31

超融合架构传统三层架构

2011-08-08 14:14:03

架构

2009-07-30 13:30:56

ASP.NET开发模式

2009-05-06 09:40:04

LINQWEB开发构架

2010-01-08 15:07:02

三层交换机

2010-02-22 17:26:03

三层交换机

2010-01-28 15:29:52

三层交换机

2015-07-02 10:57:11

General框架架构开发

2018-10-31 14:32:53

数据中心网络架构

2009-04-30 15:56:50

三层架构MVCMVP
点赞
收藏

51CTO技术栈公众号