关于三层架构中, 有一个问题, 我想问一下大家是怎么做的,就是关于“瘦BLL和胖DAL”还是“胖BLL瘦DAL”的问题。
一:瘦BLL和胖DAL
BLL仅做传递(简单的查询更新),将参数传递给DAL,返回数据给UI层
二:胖BLL和瘦DAL
DAL将数据传递给BLL(通过IQueryable实现延迟加载), 然后BLL层做数据的筛选
这种方式下, 我就只要一个公用的DAL类,提供基本的方法就可以了,不需要每个都写一个类
请问各位是怎么实现的呢? 选择某种的理由又是什么呢? 谢谢。。。
BLL:俗称业务逻辑层,主要负责模块的业务逻辑处理,将处理后的数据传递给DAL。
UI层应该尽量减少业务逻辑处理,结构会更清晰,使得开发及维护更方便。
每个都写一个类使得程序结构更清晰,利于开发及维护。更是面向对象编程思想的体现。
BLL DAL 数据访问层和业务逻辑层。他们是不可分割的。。
至于一个公共的DAL类,还不了解怎么实现,所以就是BLL简单查询更新传递给DAL一些逻辑。之后返回数据到UI。。
个人倾向于胖BLL瘦DAL
”胖BLL和瘦DAL“ 这个业务逻辑层还干点事,” 瘦BLL和胖DAL“业务逻辑层的价值没有完全体现出来,把所有的事情都推给DAL,我要是DAL肯定有点不爽!
还是胖BLL和瘦DAL吧。
取决你的业务需求,原则之一 分散关注。尽量把业务与数据访问隔离开。