BLL层即业务逻辑层,是处理业务逻辑判断的,可是这个判断是放到一个方法里还是分成多个方法呢?
题目说的“方法单一”即在BLL层里存放多个方法(有主方法和辅助方法,主方法调用辅助方法),是每个方法都有单一的功能;而“单一方法”即在BLL层中只存在一个主方法。
注:“主方法”:窗体需要调用BLL层的方法;“辅助方法”:例如一些判断,需要被主方法调用。
有些人可能会认为业务逻辑层不就是处理那些复杂的判断吗?那我写的越复杂岂不是越好?
下面我们就以充值卡为例,通过代码来看看到底哪个好?(窗体需要调用的是AddUser方法)
一、“方法单一”实现:
二、“单一方法”实现:
“方法单一”的好处:
1、符合“开放——封闭”原则
也许这只需一个判断还不是很明显,试想如果有三四个或者更多的时候,使用“单一方法”是不是就太复杂了,所有的判断都要写到一个方法里,修改起来非常困难;而使用”方法单一”则容易很多。
3、功能单一,符合“单一职责”原则:
2、可隐藏不必要的方法: