2021-08-29

三层架构

含义
三层架构主要是指将业务应用规划中的表示层 UI、数据访问层 DAL 以及业务逻辑层 BLL,其分层的 核心任务是“高内聚低耦合”的实现。在整个软件架构中,分层结构是常见和普通的软件结构框架,同 时也具有非常重要的地位和意义。这种三层架构可以在软件开发的过程中,划分技术人员和开发人员 的具体开发工作,重视核心业务系统的分析、设计以及开发,提高信息系统开发质量和开发效率,进而为信息系统日后的更新与维护提供很大的方便。
主要有以下三种分层方式:
1、数据层不包含任何代码,只有数据库,还有相关的存储过程。这种模式下,数据层看起来就变得 很简单了。只包含所建立的数据库和一些存储过程(注意是存储过程)。其实这些存储过程 的建立也 是相当复杂的,因为它们可以完成除数据访问外的其他一些很强大的功能,如分页、实现搜索算法 等。数据访问的逻辑就都放在业务层,当然业务层还包含其他一些逻辑代码。我们来看一个示例,假 设数据库里有一个表 BOOKS(书),建立一个存储过程 GetAllBooks,用来读取书的信息,这样在 业务层里编一个方法 GetBookS()和一个公用数据库访问类,GetBooks()就通过数据库访问类打 开连接,执行在存储过程,返回数据 (返回类型可以是 DataT - able,DataSet,DataReader 或 者 实 体 类)。业务层单独编译成一个或者几个 DLL 文件。接着就是表示层了,表示层通过调用 GetBookS()返回数据绑定在相关的控件里。业务层的方法都是在表示层调用。一般来说 book.aspx 和 book.aspx.cs 都是表示层的内容,所有前台的设计、相关控件、数据缓存都是属于表示层。
2、数据层还包含所有公共数据访问代码。这种模式和前一种差别不大,主要是把数据访问代码留到 数据层。这样可以很方便地实现对多数据库的支持。业务逻辑层直接调用数据层的相关访问数据的代 码,完全不必了解底层是什么数据库。其他和前一种没什么分别。
3、所有数据读取都放在数据层。这种模式下像前面所述的 GetBooks()方法都是放在数据层,在业 务层再定义一个GetBookS()方法以供表示层调用。这种模式下业务层不但不必了解底层是什么数 据库,而且连数据库的结构都不必了解了,这是最标准的三层架构了,在 Microsoft 的 PetShop 4.0 里就是这种模式
用客户端
在三层构架系统中,客户端是使用者的主要功能体验区域,相比于服务器而言非常简单。一方面,在三层构架运行的过程中,客户机软件要和各个服务器进行相互通信,不需要过于重视并发性处理。另一方面,一般客户机软件可以仿照常规程序进行指令执行,不需要进行外加保护,依托于操作系统进 行强迫性保护。但与此同时对界面具有极高的要求,系统分析的过程中就要进行专门的界面设计,同时要和客户进行及时沟通,掌握客户的实际需求,实现高效的信息反馈与交流沟通,进而保证信息系统软件界面设计的质量和效率。
数据服务器
在进行数据服务器选择的过程中,要根据信息系统平台要求和用户期望要求,同时对应各个服务器的特点进行使用与选择。一般情况下出于对系统性能的考虑,会选择SQLSERVER数据服务器,设计阶段中要通过Proactive等有效措施对系统数据库的实际使用性能进行不断地优化与完善。同时管理人员 要和程序设计人员进行有效的沟通与协作,明确信息系统软件的性能目标,设置性能期望值,构建系 统资源组合体系,满足用户的实际需求。
数据库和应用服务器的连接
在基于三层构架的信息系统开发中,应用服务器要利用SQL语言进行连接数据库服务器,其连接方法 包括DB-Library、DAO以及OLE等方式,其中DB-Library是最为常见的连接方式,作为SQLSERVER 的重要接口层,具有极强的访问信息效率和访问速度。这主要是源于DB-Library的语言开发能力,直 接省去DAO以及OLE等连接方式中抽象层的调用,节省了信息访问时间。同时,三层构架适用于使用 诸多开发语言的信息系统开发,不是.NET的专利,也不是专门用在数据库上的技术,而是一种更加普 适的架构设计理念,除了数据、逻辑、界面等层次之外,在实际应用中还会根据需要多出传递数据的 层、接口层等等。在结合DB-Library数据库连接后,设置NTWDBLIB.LIB组建,构建CDBConn实体类 库体系,实现数据库与应用服务器的连接。因此,信息系统软件架构可以为系统开发创造出良好的分 布式计算环境,其中逻辑层可以实现多个机器的同时运行,通过计算机网络计算能力,强化系统各个 功能板块的精准性和复用性,进而有效减少了信息系统软件开发的时间和周期,保证信息系统的安全 性与拓展性,实现系统功能的最大化实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值