面向对象编程的思想(1)

此系列文章主要是为新手学习面向对象编程中的架构基础,每次只有一个原则,包括名称、核心思想、例子及总结

名称:单一职责原则(Single Responsibility Principle)SRP

核心:系统中的每个对象都只应该有一个单独的职责,对象所关注的就是自身职责的完成。换言之:对一个类而言,应该只有一个引起它变化的原因。

例子:例如我们设计一个superman类:

public class SuperMan{

public void 维护世界和平(){

超人维护世界和平

……

}


public void 除草(){

超人帮大娘除草

……

}


public void 写代码(){

超人变身程序员

……

}


public void 写作业(){

超人帮懒虫写作业

……

}

……

……

}

总结:上边的超人类,看是很好用,但是一旦须要更改这个超人类的时候就会变的异常麻烦,因此,在设计类时,应该让类尽可能简单的完成任务。

优点:满足单一职责的类容易维护,并且容易被复用。

后记:单一职责原则很容易被违背,特别是在职责扩展过程中,因此,必须在职责扩散到我们无法控制之前,对代码进行重构。

思考:若一个类承担的职责过多,等于将职责全部耦合到一起,一个职责的变化就会削弱类完成其他职责的能力。也就是说在需求发生变化时,多职责的类将显得异常脆弱。

posted @ 2015-04-12 16:23  叕叒双又  阅读(120)  评论(0编辑  收藏  举报