冷月葬花魂 发表于 2015-1-16 14:27:52

NET网页编程之.NET三层架构剖析一:甚么是三层架构

兄弟们,想来你们都看过了昨天的比赛了。我现在的痛苦状跟当时应该差不多。希望本版.net老师不吝赐教,为小弟这一批迷途的羊羔指一条阳光之道!您也知道:学习技术如果只有一个人摸索,那是一件多么痛苦的事情!还有,如果万辛能得名师或长者指点,那又是多么一件幸福和快乐的事情!<p>所谓三层架构,是在客户端与数据库之间到场了一个“两头层”,也叫组件层。这里所说的三层系统,不是指物理上的三层,不是复杂地安排三台呆板就是三层系统布局,也不单单有B/S使用才是三层系统布局,三层是指逻辑上的三层,即便这三个层安排到一台呆板上。
在项目开辟的过程当中,偶然把全部项目分为三层架构,个中包含:暗示层(UI)、营业逻辑层(BLL)和数据会见层(DAL)。三层的感化分离以下:
暗示层:为用户供应交互操纵界面,这一点不管是关于Web仍是WinForm都是云云,就是用户界面操纵。我们网站展现给用户看的界面。
营业逻辑层:卖力关头营业的处置和数据的传送。庞大的逻辑判别和触及到数据库的数据考证都必要在此做出处置。依据传进的值前往用户想失掉的值,大概处置相干的逻辑。
数据会见层:见名知意,卖力数据库数据的会见。次要为营业逻辑层供应数据,依据传进的值来操纵数据库,增、删、改大概别的。
以下我复杂先容下一个用户办理模块:
为了全部项目标开辟便利,我们在项目中会建几个类库SQLHelper,BLL,DAL,Model和一个Web网站。为了定名明晰,我们能够如许定名这个三个工程(即在办理计划里增加的类库):
营业逻辑层(BusinessLogicLayer):BLL,定名空间默许设置为BLL
数据会见层(DataAccessLayer):DAL,定名空间默许设置为DAL
SQL匡助类:SQLHelper,定名空间默许设置为SQLHelper
别的我们为了数据传送的便利,一般再增加一个类库,这个类库是贯串于全部三层架构中的。即实体类。一般定名为Model,定名空间默许值设置为:Models。个中封装的每一个类都对应一个实体,一般就是数据库中的一个表。如数据库中的用户表(custom)封装为(custom),将表中的每一个字段都封装成共有的属性。
如许三层架构的搭建就基础完成了。这三层有着十分强的依附干系:
暗示层&larr;营业逻辑层&larr;数据会见层
他们之间的数据传送是双向的,而且一般借助实体类传送数据。
那末三层架构都有哪些长处呢:
1、易于项目标修正和保护。在项目标开辟过程当中大概开辟后的晋级过程当中,乃至在项目标移植过程当中。这类三层架构长短常便利的。好比项目从Web移植到Form,我们只必要将暗示层从头做一遍就能够了。其他两层不必修改,只需增加到现有项目就能够了。假如不接纳这类架构,只是将代码写到暗示层。那末一切的编码几近都要从头来了。
2、易于扩大。在功效的扩大上一样云云,若有功效的增加只需把原本的类库增加办法便可了
3、易于代码的重用。这一点就不必注释了。
4、易于合作合作开
还能够加个接口类库Iinterface,到场计划形式,使你的代码天真性更好,质量更高。
实在,当我们做一个项目时,我们应当先思索一下这个项目是否是应当使用三层/多层计划时,先得思索下是否是真的必要?实践上年夜部分程序就开个WebApplication就充足了,完整没需要作的这么庞大.而多层布局,是用于办理真正庞大的项目需求的。
<p>数据库有很多应用领域,但是如果你单单学数据库的话基本上做数据库管理员比较合适而已,跟领域结合的你还得再学习那些领域知识。(其实数据挖掘我真是不懂,本来这学期开了一门课了。

海妖 发表于 2015-1-18 14:42:07

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。

第二个灵魂 发表于 2015-1-25 08:48:38

微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。

老尸 发表于 2015-2-2 21:30:23

在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗?

若天明 发表于 2015-2-8 06:27:52

同时也感谢博客园给我们这个平台,也感谢博客园的编辑们做成专题引来这么多高人指点。

不帅 发表于 2015-2-24 22:02:51

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。

admin 发表于 2015-3-7 13:50:56

JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。

精灵巫婆 发表于 2015-3-15 07:38:07

当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。

飘灵儿 发表于 2015-3-22 00:05:16

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。
页: [1]
查看完整版本: NET网页编程之.NET三层架构剖析一:甚么是三层架构