单一职责原则

就一个类而言,应该仅有一个引起它变化的原因。我们在做编程的时候,很自然的会给一个类添加各种各样的功能,比如我们写一个窗体应用程序,一般都会生成Form1这样一个类,于是我们就把各种各样的功能,像商业运算法呀,像数据库访问啊,都写到类中,这就意味着,无论任何需求改变,我们都需要改变这个窗体类,这其实很糟高的,维护麻烦,复用不可能,也缺乏灵活性。

单一职责原则(SRP) ,就一个类而言,应该只有一个引起它变化的原因。

 

如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抵制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。

当然,软件设计真正要做的许多内容,就是发现职责并把那些职责相互分离,其实要去判断是否应该分离出类来,也不难,那就是如果你能够想到多于一个动机去改变一个类,那么这个类就具有多于一个职责。

posted @ 2012-04-08 00:26  瓜蛋  阅读(261)  评论(0编辑  收藏  举报