什么是三层构架

作者&投稿:秘馥 (若有异议请与网页底部的电邮联系)
什么是三层构架~

三层构架 一般来说就是mvc编程模式,这三层分别是:显示层(View)、业务层(Controller)和数据操作层(DAO)。显示层是前台用户操作界面;业务层是业务逻辑(既功能)方法实现体;数据操作层是对数据库操作的方法实现体。业务层和数据操作层都是后台管理。你可以在百度的知道上搜一下mvc编程模式。
以下是从网上拷贝的:
OSI七层模型
OSI 七层模型称为开放式系统互联参考模型 OSI 七层模型是一种框架性的设计方法
OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主
要的功能使就是帮助不同类型的主机实现数据传输

应用层:提供了文件
(支持协议:http smtp pop ftp telnet 等)
表示层:提供了数据的表示 压缩和数据转换等服务
(支持数据格式:ASCII EBCDIC JPEG等)
会话层:维持不同应用程序所产生的会话连接和分隔不同应用程序产生的会话
(操作系统以及应用程序读
传输层:提供可靠或者不可靠的数据传输,在重传之前执行纠错和维持端到端的连接
(TCP UDP SPX等)传递数据段或报文
网络层:提供逻辑寻址以及路由选择
(IP IPX)传递数据包
数据链路层:将数据包合成字节,并将字节合成帧 MAC 地址提供对介质的访问,以及平面的
寻址执行错误检测和流量控制
其中 LLC 子层负责识别上层数据,MAC 子层负责和物理层进行联系
(802.3 802.2 HDLC等)传递数据帧
物理层:在设备之间传输原始比特流,并且指定电压大小
(EIA/TIA-232 V.35 等)传递原始比特流


一般讲到三层架构,其实就是将整个业务应用划分为表示层、业务逻辑层、数据访问层等。
三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。
普通三层:数据访问层DAL:用于实现与数据库的交互和访问,从数据库获取数据或保存数据到数据库的部分。 业务逻辑层BLL:业务逻辑层承上启下,用于对上下交互的数据进行逻辑处理,实现业务目标。 表示层UI:主要实现和用户的交互,接收用户请求或返回用户请求的数据结果的展现,而具体的数据处理则交给业务逻辑层和数据访问层去处理。业务实体Model:用于封装实体类数据结构,一般用于映射数据库的数据表或视图,用以描述业务中客观存在的对象。Model分离出来是为了更好地解耦,为了更好地发挥分层的作用,更好地进行复用和扩展,增强灵活性。 通用类库Common:通用的辅助工具类
工程模式:简单工厂模式又称为静态工厂方法(Static Factory Method)模式,属于类的创建型模式,通常根据一个条件(参数)来返回不同的类的实例。
工厂角色(Creator)
是简单工厂模式的核心,它负责实现创建所有具体产品类的实例。工厂类可以被外界直接调用,创建所需的产品对象。
抽象产品角色(Product)
是所有具体产品角色的父类,它负责描述所有实例所共有的公共接口。
具体产品角色(Concrete Product)
继承自抽象产品角色,一般为多个,是简单工厂模式的创建目标。工厂类返回的都是该角色的某一具体产品。
通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通 讯与中间层建立连接,再经由中间层与数据库进行交换.
完善的三层结构的要求是:修改表现层而不用修改逻辑层,修改逻辑层而不用修改数据层 否则你的应用是不是多层结构,或者说是层结构的划分和组织上是不是有问题就很难说. 不同的应用有不同的理解,这是一个概念的问题.
MVC系统中的模型从概念上可以分为两类――系统的内部状态和改变系统状态的动作。模型是你所有的商业逻辑代码片段所在。本文为模型提供了业务实体对象和业务处理对象:所有的业务处理对象都是从ProcessBase类派生的子类。业务处理对象封装了具体的处理逻辑,调用业务逻辑模型,并且把响应提交到合适的视图组件以产生响应。业务实体对象可以通过定义属性描述客户端表单数据。所有业务实体对象都EntityBase派生子类对象,业务处理对象可以直接对它进行读写,而不再需要和request、response对象进行数据交互。通过业务实体对象实现了对视图和模型之间交互的支持。实现时把"做什么"(业务处理)和"如何做"(业务实体)分离。这样可以实现业务逻辑的重用。由于各个应用的具体业务是不同的,这里不再列举其具体代码实例。
MVC(模型Model-视图View-控制器Controller)是一种设计模式,我们可以用它来创建在域对象和UI表示层对象之间的区分。 同样是架构级别的,相同的地方在于他们都有一个表现层,但是他们不同的地方在于其他的两个层。 在三层架构中没有定义Controller的概念。这是我认为最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是以实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。
在ASP NET中的MVC架构编写的,具有极其良好的可扩展性。它可以轻松实现以下功能: ①实现一个模型的多个视图;②采用多个控制器;③当模型改变时,所有视图将自动刷新;④所有的控制器将相互独立工作。这就是MVC架构的好处,只需在以前的程序上稍作修改或增加新的类,即可轻松增加许多程序功能。以前开发的许多类可以重用,而程序结构根本不再需要改变,各类之间相互独立,便于团体开发,提高开发效率。下面讨论如何实现一个模型、两个视图和一个控制器的程序。其中模型类及视图类根本不需要改变,与前面的完全一样,这就是面向对象编程的好处。对于控制器中的类,只需要增加另一个视图,并与模型发生关联即可。该模式下视图、控制器、模型三者之间的示意图如图2所示。同样也可以实现其它形式的MVC例如:一个模型、两个视图和两个控制器。从上面可以看出,通过MVC架构实现的应用程序具有极其良好的可扩展性,是ASP NET面向对象编程的未来方向。
MVC的不足体现在以下几个方面:(1)增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。(2)视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。3)视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。(4)目前,一般高级的界面工具或构造器不支持MVC架构。改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,从而造成使用MVC的困难。
三层架构是将代码按其作用分成三部分,每部分解决自己负责的流程. 三层架构的功用之处,在于驾驭大型web程序的结构,使之便于管理和扩展.
在设计UI的时候,我们不需要关心其中的逻辑和数据问题,只需要空出对应的位置,用于放置数据. 在设计和修改的时候,要解决的只是HTML的结构,代码看起来干净利落,做起来也是干净利落.
UI直接将程序逻辑的任务丢给BLL,BLL就开始构建具体的实现细节.BLL的创建依赖于业务. 例如一个文章系统,BLL_Aticle就表示它是用于对文章的处理的.BLL_Aticle可以提供给UI一个文章列表的recordset,显示在UI的预留位置. 当BLL_Aticle需要从数据库中获取数据的时候,就将任务丢给DAL层
DAL层专门负责和数据库打交道,它从BLL获取参数,组织一个有效的SQL,建立数据库连接,执行SQL进行更新或获取,将返回的数据交给BLL.
每一部分的业务都集中于一个UI-BLL-DAL的链中,上下清晰了然. 至于是怎样的便于管理和扩展,将在后面结合实例进行分析.
复杂的生命形式必有复杂的生存法则,若想在自己的项目中应用好三层架构,需要多用点心体会其中的应用法则.
我对三层架构的理解还不够深,这些文章能算是抛砖引玉就不错了.大家在阅读当中不要局限于我所构思的法则,要多向具体的应用中去实践,根据具体情况,寻出自己的法则. 有所感悟,就记得写下来,这种感悟是进步的契机,但必然不是最终的结果.有了感悟就拿去应用,可以发现它的优劣,继续完善
三层架构比双层或单层结构都有更大的优势。三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增。开发双层或单层应用时,每个开发人员都应对系统有较深的理解,能力要求很高,开发三层应用时,则可以结合多方面的人才,只需少数人对系统全面了解,从一定程度工降低了开发的难度。
三层架构属于瘦客户的模式,用户端只需一个较小的硬盘、较小的内存、较慢的CPU就可以获得不错的性能。相比之下,单层或胖客户对面器的要求太高。
三层架构的另一个优点在于可以更好的支持分布式计算环境。逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。分布式计算的潜力巨大,远比升级CPU有效。
三层架构的最大优点是它的安全性。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。


什么是三层构架
三层构架 一般来说就是mvc编程模式,这三层分别是:显示层(View)、业务层(Controller)和数据操作层(DAO)。显示层是前台用户操作界面;业务层是业务逻辑(既功能)方法实现体;数据操作层是对数据库操作的方法实现体。业务层和数据操作层都是后台管理。你可以在百度的知道上搜一下mvc编程模式。以下...

什么是三层构架
三层架构是将代码按其作用分成三部分,每部分解决自己负责的流程. 三层架构的功用之处,在于驾驭大型web程序的结构,使之便于管理和扩展. 在设计UI的时候,我们不需要关心其中的逻辑和数据问题,只需要空出对应的位置,用于放置数据. 在设计和修改的时候,要解决的只是HTML的结构,代码看起来干净利落,做起来也是干净利落. U...

三层构架和 MVC 不同吗
1. 三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目。MVC是一个设计模式,它是根据项目的具体需求来决定是否适用于该项目。2. 三层架构是最基本的项目分层结果,而MVC则是三层架构的一个变体,MVC是一种好的开发 模式。M 即Model(模型层),主要负责出来业务逻辑以及数据库的交互...

三层架构是什么?
mvc是设计模式,三层是架构,哪三层,下面的很多同学都解释得很清楚了。显示层 view层 ,这层是现实你的数据的。可以用web winform。业务层 bll层 这层是业务的层次,这层的事务主要是面向客户的。数据层 dal层 这层是数据层,是处理你业务层怎么处理数据的一层,相对来说,这层比较面向程序员的。 bll管你做什么 d...

什么是MVC(三层架构)
MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。视图视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的...

三层构架和 MVC 不同吗
首先,MVC和三层架构,是不一样的。三层架构中,DAL(数据访问层)、BLL(业务逻辑层)、WEB层各司其职,意在职责分离。MVC是 Model-View-Controller,严格说这三个加起来以后才是三层架构中的WEB层,也就是说,MVC把三层架构中的WEB层再度进行了分化,分成了控制器、视图、实体三个部分,控制器完成页面...

ASP.NET构架?B\/S?三层构架?这几个有什么关系吗?
b\/s叫浏览器服务器模式,相对于客户端服务器模式c\/s,就是程序通过浏览器实现,不需要安装客户端。三层架构指mvc,相对于asp.net的webform,三层架构是一种程序设计模式,应该说是一种最佳实践模式,把页面显示、数据获取,逻辑处理分单元实现,降低耦合性,不限于asp.net,其他程序语言都会使用。关系嘛...

C#ASP.NET中说的MVC是什么?还有三层构架
三层架构,即:数据层、表现层、业务逻辑层 MVC的说法最早来自于JAVAEE STRUTS中著名的MVC架构:Model,View,Controller,但今天的MVC,就像三层架构一样,形成一个通用、普遍的行业标准,应该说MVC即代表了三层架构的概念,也具有深层三层机构中象CPU一样智能协调和管理的概念。

.NET分层是怎么回事 三层架构与其又有什么关系,能否帮忙简单介绍一下三...
三层结构是现在开发中常用的开发模式 三层构架即MVC(model-view-control)model:模型层,这里主要放置业务逻辑,也就是处理的一些方法,包括数据的交互 view:视图层,这里就是做出来呈现给客户的界面,即网页或客户端的一些窗体界面 control:控制层,这里组要负责业务逻辑的调用,以及返回的页面控制,就...

急急急!!ASP.NET构架?B\/S?三层构架?这几个有什么关系吗
BS即Browser\/Server(浏览器\/服务器)结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。ASP.NET基于.NET Framework的Web开发平台 三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

滑县18722517868: 什么是三层架构 -
中叔张卡洛: 三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL).区分层次的目的即为了“高内聚,低耦合”的思想. 1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得. 2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理. 3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等.

滑县18722517868: 计算机中二层架构与三层架构分别指什么? -
中叔张卡洛: CPU中的架构是指CPU对主板接口类型的不同,并不是c/s与b/s模式

滑县18722517868: 步步为营 .NET三层架构解析 一、什么是三层架构 -
中叔张卡洛: 三层的作用分别如下:表示层:为用户提供交互操作界面,这一点不论是对于Web还是WinForm都是如此,就是用户界面操作.我们网站展示给用户看的界面.业务逻辑层:负责关键业务的处理和数据的传递.复杂的逻辑判断和涉及到数据库的...

滑县18722517868: 什么是三层架构?
中叔张卡洛: 三层架构(3-tier application) 一个三层架构的应用程序由三部分组成,这三部分各自分布在网络中的不同地方.这三个部分分别是:工作站或表示层接口、事务逻辑、数据库以及与其相关的程序设计. 在一个典型的三层架构应用程序中,应用...

滑县18722517868: 什么是三层架构
中叔张卡洛: 一种编程思想,所谓三层即:视图层,业务逻辑层,数据处理层.

滑县18722517868: 什么是三层架构
中叔张卡洛: 三层构架指的是:表示层、业务层和数据层!~

滑县18722517868: 什么是三层架构
中叔张卡洛: 就是mvc模式 M:model 模型 V:view 视图 c:controller 控制层

滑县18722517868: 三层架构体系的介绍 -
中叔张卡洛: B/S(Brow它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构.在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器(Server)实现,形成所谓三层3-tier结构.这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO).ser/Server)结构即浏览器和服务器结构.

滑县18722517868: 三层架构是怎么回事?
中叔张卡洛: 系统设计原则,也就是分层结构,每层只关心自身的处理逻辑,系统灵活性强.通常为三层,前端表示层,中间业务逻辑层,和后端的数据访问层.

滑县18722517868: 编程里的三层架构是怎么回事,哪里有学习的视频 -
中叔张卡洛: 视频的话就不知道了 三层是种思想 和OOP什么的思想没关系它是开发人员多年来累积的经验的成果 三层:分为表示层 业务逻辑层 数据访问层三层:就是在一个解决方案里面有几个项目 一个层对应一个项目数据访问层 用来操作数据库的 不做其...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网