首页 新闻 赞助 找找看

PetShop4.0详解问题

0
悬赏园豆:10 [已关闭问题]

PetShoP 4.0详解 里将BLL层抽象IBLL以IProudct为例,IDAL层的IProuduct 作什么用呢,不太明白谁能帮忙解释一下谢谢

问题补充: 谢谢各位的回答,我发现IBLL层的IProduct和IDAL层的IProduct的接口是差不多的,所以就有些迷惑,IBLL里应该放哪些接口呢?
wolfes的主页 wolfes | 初学一级 | 园豆:174
提问于:2009-09-09 14:59
< >
分享
其他回答(3)
0

个人理解:实现多态,使BLL与DAL之间解耦,易扩展。

如果不对,请高手指点。

Mr雨 | 园豆:1199 (小虾三级) | 2009-09-09 15:43
0

IProudct  接口、实现 逻辑层与数据层的分离。

例:比如你的系统有3个版本,分别是SQLserver版本,多数据库版本,Oracal版本。这时候抽象工厂的优势就出来了,在编写完成不同的数据库访问层后,更改工厂类中的反射路径就可以实现,不需要更改逻辑程。

邢少 | 园豆:10926 (专家六级) | 2009-09-09 15:48
0

我记得Petshop4.0用了抽象工厂模式,IProuduct是抽象出商品的数据库操作,你可以实现SQLserver版本、Oracle等等版本的数据访问层。

吴畏 | 园豆:426 (菜鸟二级) | 2009-09-10 08:57
0

PetShop4使用了带有简单工厂特质的抽象工厂模式,IDAL里的接口都是针对不同数据库版本而构建的,即:不同的数据库都要实现里面的接口,这样暴露给业务逻辑层的就是一个统一的接口,业务逻辑层使用该接口完成数据库的操作,而具体操作数据库的代码都是在具体的数据库操作类(SQLServerDAL,OracleDAL)里面完成的.

这样就降低了具体数据库操作代码与业务逻辑层的耦合

xiaolun | 园豆:70 (初学一级) | 2009-09-10 11:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册