.NET三层架构应用之十层框架

开发 后端
三层架构(3-tier application) 就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

  凡是接触.net开发的,***要理解的就是三层架构的重要思想。关于三层架构的概述 我就不多说了,相信大家都早已明白。

  三层架构(3-tier application) 就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

  区分层次的目的即为了“高内聚,低耦合”的思想。

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

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

  3、数据访问层(DAL):该层是直接操作数据库的,针对数据的增添、删除、修改、更新、查找等。

  各层关系如下图所示:

  我进入公司之后,所接触的项目都是建立在十层框架的基础之上。所谓十层框架 其实就是三层架构的具体应用。

  增加了网络通讯层,实现远程调用。服务端运行着Windowsservice 来产生数据访问层的对象提供给客户端请求调用。

  这样处理,使得整个C/S模式中,一旦底层方法发生变动时,只需要更新服务器上相应的dll,而不需要客户端主机同步更新,

  减少了维护成本。

  下面说下十层架构中,每层的作用以及层与层之间的关系。

  0L层:即启动层。用来控制画面层中主画面的启动。这层最简单,没有太多代码。

  namespace CompanyName.Application.UI。

  1U层:即画面UI层。创建用户界面。namespace CompanyName.Application.UI。

  2C层:即画面逻辑层。处理与画面相关的逻辑控制,封装下层方法供UI层使用。

  namespace CompanyName.Application.Controller。

  3E层:即画面实体类层。根据画面设计相应的实体类或者枚举类型。

  namespace CompanyName.Application.Entity。

  4A层:即业务逻辑层。业务逻辑的处理,以及上下层之间数据的转换。属于中间层。

  namespace CompanyName.Application.Access。

  5G层:即网络层,也称远程调用层。获取远程服务器上的对象,进行远程调用。

  namespace CompanyName.Application.Remoting.Mediation。

  6O层:即接口层。定义接口,用来规范数据访问层的方法设计。可以对子类进行封箱和拆箱,也便于网络传输。

  namespace CompanyName.Application.Remoting.Interface。

  7D层:即数据库实体类。这一层所定义的类,是完全按照数据库中表结构来定义属性的。与3E层不同在于,

  3E层类中具有一些类方法,比如Clone();Compare();Equals();等。而D层则除了get {}set{} 方法之外的额外方法。

  namespace CompanyName.Application.Remoting.ParamData。

  8P层:即数据库逻辑层。继承O层接口,封装R层方法。处理一些数据序列化转换。

  namespace ThreeHigh.Application.Remoting.Bussiness。

  9R层:即数据库访问层。直接访问数据库,针对数据的增添、删除、修改、更新、查找等。

  namespace CompanyName.Application.Remoting.DAO。

  具体项目中一本程序的框架如下图所示。

  因为公司的程序都是与公司的数据库有关的,而且有调用了很多共通的类与方法,没办法单独运行,所以程序源代码就不再上传了。

  我觉得关键的技术主要在远程调用对象和服务器生成对象。

原文:http://www.cnblogs.com/KeiyouNo/archive/2012/02/02/Ten.html

【编辑推荐】

  1. 如何解决京东商城的性能瓶颈?
  2. ASP.NET性能优化之反向代理缓存
  3. .NET程序员不要错过如此强大的T4模板
  4. ASP.NET MVC会成为ASP.NET未来主流的UI平台?
  5. AgileEAS.NET实现医院信息系统的解决方案
责任编辑:彭凡 来源: 博客园
相关推荐

2011-04-19 13:53:41

三层架构

2013-01-09 11:00:20

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

2009-07-28 17:25:14

ASP.NET三层结构

2011-08-08 14:14:03

架构

2009-07-28 15:08:50

MVC三层架构实例

2015-07-02 10:57:11

General框架架构开发

2009-08-26 18:20:42

三层架构

2009-07-28 17:18:33

2019-07-26 08:39:29

JavaWebMVC

2010-07-06 15:46:41

UDP协议

2009-04-30 15:56:50

三层架构MVCMVP

2018-10-31 14:32:53

数据中心网络架构

2009-07-30 13:07:49

ASP.NET中的三层

2014-02-12 10:07:07

三层交换原理

2012-08-15 11:03:18

框架项目

2018-03-08 15:30:31

超融合架构传统三层架构

2018-07-19 12:16:50

交换技术三层二层

2009-05-06 09:40:04

LINQWEB开发构架

2012-02-07 10:40:13

MVCJava

2010-01-08 10:08:06

三层交换技术
点赞
收藏

51CTO技术栈公众号