首页 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
移动开发 架构设计 编程语言 Web前端 互联网
开发杂谈 系统运维 研发管理 数据库 云计算 Android开发资料
资讯 业界资讯 软件杂谈 编程开发 网站建设 网络观查 搜索引擎 移动应用 网站运营 网络地图
开发 移动开发 Web前端 架构设计 编程语言 互联网 数据库 系统运维 云计算 开发杂谈
[架构设计] 初识三层结构
初识三层结构
	第一次听说三层结构,是九期的一个师哥在给我们讲高校云平台。那天的感觉像是在听天书,以前从没有接触过。不过,那几个不断在师哥口中重复的名词BLL层、DAL层还是留下了些印象。现在自己来到三层结构的学习了,对师哥讲的那些词算是有种久违的感觉。下面就对三层结构的初识做个总结。
	一. 多层结构的划分方式。
	结构的划分方式有两种,分别是物理上和逻辑上。从物理的角度来说,可分为显示层、业务层和数据层。从逻辑的角度看,可分为UI层、BLL+DAL层以及DB层。这里我们所说的三层结构是指逻辑上划分的三层。
	刚开始还真没发现物理上与逻辑上有什么差别,想想这不都是同样的三层吗。这个问题不解决,后面的学习就更是问题。后来发现,它们两个根本不是一回事,物理上的三层是指客户机、应用服务器和数据库服务器,可以称得上是三台机器。而逻辑上的三层是指一台机器上包含了表示层、应用层、数据层和数据库,也可以成为模块,这样可能容易理解些。
	值得注意的是,从逻辑结构到物理结构的对应关系并不是唯一的,了解到应该是包含五种。不过现在觉得自己的学习还没有达到那样深层的阶段,这里就不详细研究了,还是先知道就好。大家可以参考下面的图有个简单了解。
			


二.为什么要使用三层架构。 为什么要用三层,这个问题的答案很简单,可以想想之前学习的软工思想。在整个编程中,最基本的就是“高内聚低耦合”的思想。所以,有了三层,将模块间分层,这样程序出错可以分层去检查,各层次间也不会发生相互影响,就大大提高了效率。 既然谈到这里,就简单的说说三层架构的优缺点。 优点: 1. 开发人员可以只关注整个结构中的其中某一层。 2. 可以很容易用新的实现来替换原有层次的实现。 3. 可以降低层与层之间的依赖。 4. 有利于标准化。 5. 利于各层逻辑的复用。 缺点: 1. 降低系统的性能。如果不采用分层式结构,很多业务可以直接访问数据库,以此获取相应的数据,如今却必须通过中间层来完成。 2. 有时导致级联的修改。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。 在此也有一点需要声明:三层结构也不是万能的,它有优点也有缺点,在软件开发中,也要视情况而定究竟需不需要使用它。紧随其后的就是下一个问题。 三.什么情况下需要使用三层架构。 一句话的总结:当业务复杂到一定程度,当数据存储到相应的数据库或数据存储介质。前面这些都是对三层宏观上的介绍,下面就是对三层中各层的深入剖析。 一. 数据访问层(DAL) 1. 作用 1) 从数据源加载数据(Select) 2) 向数据源写入数据(Insert/Update) 3) 从数据源删除数据(Delete) 2. 常用的技术 1) ADO.NET+SQL语句 2) O/R Mapping 框架 3) 访问SQL Server数据库时Linq to SQL 3. 具体应用原则 只提供基本的数据访问,不包含任何业务相关的逻辑处理。 4. 认识与体会 在机房收费系统中,我们都建立了与数据库之间的连接。在这里,我们一遍遍写SQL语句,反复对数据库中的数据进行增删改查,所以利用SQL语句对数据的处理肯定是不陌生。不过,现在分层之后,光从上面的那二. 显示层(UI) 1. 作用 1) 向用户展现特定业务数据 2) 采集用户的输入信息和操作 2. 设计原则 用户至上,兼顾简洁 3. 常用技术 1) Windows Form:Form、Control 2) ASP.NET :aspx, ascx, master, HTML 4. 具体应用原则 只负责显示和采集用户操作,不包含任何的业务相关的逻辑处理。 5. 认识与体会 这一层看似简单,但要做得好确实非常困难的。就还是拿之前做的收费系统来说,我自己觉得我做的界面已经很好了,整齐干净,控件的大小也很统一,但验收的时候,师父就觉得怎么看怎么别扭,还觉得很乱,这样,就给用户不好的心情了。虽说是萝卜青菜,各有所爱,但软件开发还是要去做符合喜闻乐见的大众文化的界面好,用户这一关就不难了。在三层的学习中,显示层也有这么多的技术可以参考,可想,要做出一道佳肴,还需要我们学好技术才行啊。 三. 业务逻辑层(BLL) 1. 作用 1) 体现核心价值的部分,关注点集中在业务规则的制定、业务流程的实现等与业务系统有关的系统设计。 2) 处于访问层与表示层中间,起到了数据交换中承上启下的作用。 2. 具体应用原则 负责处理业务逻辑。通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理。处理完成后,返回必要数据给UI。 3. 认识与体会 逻辑层,看着名字就觉得它不简单,功能的实现很大程度上是依赖它其中的代码的。加上它又是两层的中间,所以关系的依赖与否对其来说是关键。 在此对各个层也有了更加深刻的了解,似乎觉得三层已然在心中。可是这些远远是不够的,所以,后面自己还将结合实例去进一步了解,就从视频中的登录小例子开始。Ready?Go!



 此文从网络中自动搜索生成,不代表本网站赞成被搜索网站的内容或立场    查看原文
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-20 14:20:42
 
  网站联系 软件世界网-www.sjsjw.com ©2014 蜀ICP备06016416号 三峰网旗下网站