参考博文:http://www.cnblogs.com/shaosks/category/351488.html
面向对象设计的原则主要有:单一职责原则,开放封闭原则,里氏替换原则,依赖倒置原则,迪米特法则,合成/聚合复用原则。下面将对每个原则做一个学习理解与总结,加深对面向对象的理解,促进工作中对这些原则的运用。
1、单一职责原则(Single Responsibility Principle SRP)一个类只做一件事情
There should never be more than one reson for a class to change。也就是说引起一个类改变的原因只能有一个,一个类承担的职责过多应进行分离,使程序设计达到高内聚低耦合的原则。从而使一个功能的改变只需要修改一个类而不影响到其他的功能。例如作者所说的调制解调器,应该将连接和数据传送两个功能分开抽象出两个接口,而调制解调器同时实现这两个接口实现链接和数据传送的功能,因此当链接的功能改变时对数据传送功能没有产生任何影响。
单一职责原则优点:降低类的复杂性,提高可维护性,提高可读性,降低需求变化带来的风险。
2、开放封闭原则(Open-Closed Principle OCP)面向抽象编程
开放封闭原则是所有面向对象原则的核心,要求软件实体应对扩展开放,对修改封闭。软件设计本身追求的目标就是封装变化,降低耦合,而开放封闭原则正是对这一目标的直接体现。
开放封闭原则的实现:实现思想就是对抽象编