您的位置:首页 > 编程语言 > ASP

[ASP中使用三层架构] 3.使用三层架构的好处

2009-09-15 16:06 274 查看
对于三层架构的概念性意义,网络上有很多专文探讨,若想深入了解,可以自寻解答.本文仅作为一种应用性探讨,讲的更多的是实现的细节.
简单地讲,三层架构是将代码按其作用分成三部分,每部分解决自己负责的流程.
从表入深,分别是:
界面层-UI 处理页面的数据显示,及用户体验
逻辑层-BLL 业务功能的实现过程,生成结果,提交给UI
数据层-DAL 访问数据库,将结果提供给BLL
可以想象成一个做面包过程,DAL负责从容器中取来面粉+鸡蛋+水,BLL负责搅和成可用的面浆并烘烤,UI负责把烤好的面包包装好放在货柜上等待被买走.



三层架构强调程序的可复用性,在这一点上并不独特.
在传统的ASP编程中,通常将可复用的代码封装在function,sub中并放在例如mainfunction.asp之类的文件中,通过<!--#include file="mainfunction.asp" -->来调用. 事实上,本文所讲的三层架构的代码复用方式,也是用<!--#include file="**.asp" -->实现的,跟传统方式是一致的.所以如果仅仅是开发一个小型web程序,例如留言本之类,用上三层架构就显得很啰嗦了.



三层架构的功用之处,在于驾驭大型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的链中,上下清晰了然. 至于是怎样的便于管理和扩展,将在后面结合实例进行分析.



复杂的生命形式必有复杂的生存法则,若想在自己的项目中应用好三层架构,需要多用点心体会其中的应用法则.
我对三层架构的理解还不够深,这些文章能算是抛砖引玉就不错了.大家在阅读当中不要局限于我所构思的法则,要多向具体的应用中去实践,根据具体情况,寻出自己的法则. 有所感悟,就记得写下来,这种感悟是进步的契机,但必然不是最终的结果.有了感悟就拿去应用,可以发现它的优劣,继续完善.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: