软件的三层架构.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

引言

三层结构是传统的客户服务器结构的发展,代表了企业级应用的未来,典型的

有Web下的应用。多层结构和三层结构的含义是一样的,只是细节有所不同。

之所以会有双层、三层这些提法,是因为应用程序要解决三个层面的问题。

一、软件架构和分层

(一)软件架构(softwarearchitecture)

是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件

架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个

组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽

象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组

件之间的连接通常用接口(计算机科学)来实现。软件体系结构是构建计算机软

件实践的基础。与建筑师设定建筑项目的设计原则和目标,作为绘图员画图的基

础一样,一个软件架构师或者系统架构师陈述软件构架以作为满足不同客户需求

的实际系统设计方案的基础。

(二)分层

分层是表示将功能进行有序的分组:应用程序专用功能位于上层,跨越应用

程序领域的功能位于中层,而配置环境专用功能位于低层。分层从逻辑上将子系

统划分成许多集合,而层间关系的形成要遵循一定的规则。通过分层,可以限制

子系统间的依赖关系,使系统以更松散的方式耦合,从而更易于维护。子系统的

分组标准包含以下几条规则可见度。各子系统只能与同一层及其下一层的子系统

存在依赖关系。

(三)使用分层架构开发的必要性

1、分层设计允许你分割功能进入不同区域。换句话说层在设计是就是逻辑

组件的分组。例如,A层可以访问B层,但B层不能访问A层。

2、用分层的方法,以提高应用程序的可维护性,并使其更容易扩展,以提

高性能。

(四)设计分层的原则

1、层意味着组建的逻辑分组。例如,对用户界面,业务逻辑和数据访问组

建应该使用不同的不同的层。

2、在一个层内组建应该聚合的。如业务层组建仅应提供与业务逻辑相关的

操作,而不是提供其他操作。

3、在设计的每一个层接口时要考虑好物理边界。如果通信扩月了物理边界,

使用基于消息操作;否则使用基于对象操作。

4、考虑使用接口类型(interface)来定义每层的接口。这将允许你创建该

接口的不同实现,提高可测性。

5、对于Web应用程序,在表示层和业务逻辑层之间实现基于消息的接口是

一个好主意,即使这两层没有跨越物理边界。基于消息的接口更适合于无状态的

Web操作。

(一)概述

在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微

软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层

(又或称为领域层)、表示层。

、表示层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的

时候他的所见所得。

2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,

对数据业务逻辑处理。

3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、

删除、修改、查找等。

(二)三层结构原理:

3个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。

所谓三层体系结构,是在客户端与数据库之间加入了一个中间层”,也叫组

件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就

是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三

层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访

问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数

据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与

数据库进行交互。

(三)各层的作用

数据访问层:

有时候也称为是持久层,其功能主要是负责数据库的访问可,以访问数据库

系统、二进制文件、文本文档或是XML文档。简单的说法就是实现对数据表的

Select,Insert,Update,Delete的操作。如果要加入ORM的元素,那么就会包

括对象和数据表之间的,以及对象实体的持久化。主要是对原始数据(数

据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,

是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。

业务逻辑层:

主要

文档评论(0)

各类考试卷精编 + 关注
官方认证
内容提供者

各类考试卷、真题卷

认证主体社旗县兴中文具店(个体工商户)
IP属地河南
统一社会信用代码/组织机构代码
92411327MAD627N96D

1亿VIP精品文档

相关文档