三层架构已经学习了一段时间,机房收费系统的重构也正在进行,关于三层的认识正在不断加深,对于三层架构,我也简单谈谈我的认识!
什么是?
顾名思义,将一个软件系统的业务应用分为了三层,分别是:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)
为什么?
高内聚,低耦合
怎么用?
表现层(UI,user interface)
作用:用户使用的界面,向用户展现特定业务数据,采集用户的输入信息和操作
设计原则:用户至上,兼顾简洁
常用的技术:Windows Form :Form 、Control;
ASP.NET :aspx、ascx、master、html
业务逻辑层(BLL,Business Logic Layer)
作用:从UI中获取用户指令和数据,执行业务逻辑,通过DAL操作数据源
从DAL中获取数据,返回到UI显示
职责机制:UI—>BLL—>DAL—>BLL—>UI
数据访问层(DAL,Data Access Layer)
作用:对数据源进行增(Insert)删(Delete)改(Update)查(Select)
常用的技术:ADO.NET +SQL语句
访问SQL Server 数据库时Linq to SQL
O/R Mapping框架 Nhibernate
各层之间的引用关系
UI——>BLL——>DAL
UI直接引用BLL,可能会间接引用DAL
BLL引用DAL
DAL不引用UI和BLL
优缺点
优点
1.易修改
2.易复用
3.标准化
4.结构明确
缺点
1.系统性能降低
2.造成级联修改
3.增加成本
小结
三层架构在真正应用的过程中,不单单涉及刚刚介绍的内容,还有实体层、接口和一些设计模式的使用,这样的话,看起来也就不仅仅只有三层了。所以说呢,三层不再仅仅指“三层”,而是一种思想。对于分层思想的体会,还有很长的路要走……
原文地址:http://blog.csdn.net/haovip123/article/details/38561855