在软件设计中或是系统架构中,类的单一原则是非常重要的原则,这个也关系到整个系统可维护性,可扩展性,类的单一原则这个概念其实是很容易理解的。首先介绍一下类的单一原则概念:
类的单一原则:一个类,只做一件事,只有一个引起它变化的原因。
怎么理解类的单一原则这个概念呢?打一个现实中的列子,比如人类,它是一个类,人类有人类的属性跟方法,人不能有跟人类无关的属性跟方法,比如人有手脚,但人不能有车的轮子,这就不是人。这个概念我就不继续举例了,这个概念应该很容易理解。
现在说一下本文的重要中心,我想说的,万物都是相同的,编程也不例外,就像美国人设计飞机,都还在模仿动物呢。
既然一个类只能干一个事情,那一个模块,一个子系统,整个系统也只能干一件事情。
这就好比,生成线的流水线一样,每个员工只干一件事情,没个工段只干一件事情,整条生成线只干一件事情,是一样的道理,再比如,公司的IT部门,IT部门的员工只干一件事情,整个部门只干一件事情,你不能让一个IT有干IT的事情有干销售,这个显然是不可取的。
那一个模块,一个子系统,整个系统也只能干一件事情,这个可能你会想这不是白说吗,这个谁都知道,但是实际上你又做到了吗,比如一个供应的系统中,需要对产品价格进行核算,只有核算价格的产品,才能入库,这时候,你会把核算产品的模块放在哪,是放在供应链里面吗?这个其实是不可取的,你想,供应链其实并不关心产品的核算,这个是财务部门或是产品部门的事情,跟供应链有什么关系,那个这个模块就应该放到财务系统里面。
如需转载请注明本文出处:http://www.cf17.com/html/article/182.html ,谢谢。
在http://www.cf17.com 中的技术文档中有我平时总结的一些经验,并在逐步更新中,也欢迎到这里来交流。