面对对象设计的基本原则综述
来源:互联网 发布:php微信抢红包源代码 编辑:程序博客网 时间:2024/06/06 02:18
一.意义
提高代码的复用和可维护性一直是核心问题。设计原则帮助我们维护系统,加强代码的维护性,解决代码之间的耦合问题,只修改一小部分。我们在看《代码简洁之道》《设计模式》等提升编程思想时,总会遇见应该遵守XXX原则,什么情况违背了XXX原则。其实这些基本原则在OOP编程时,应该特别熟练的应用。
二.七大设计原则
1.单一职责(Single Responsibility Principle, SRP)
它指定一个类只应该有单一领域的功能。在我们设计一个类时,应该经常被用到和遵守。
2.开闭原则(Open-Closed Principle, OCP)
它指定对原有功能模块扩展开放,对修改关闭。
3.里氏代换原则(Liskov Substitution Principle, LSP)
所有引用基类对象时的都可以透明的替换为子类对象
4.依赖倒置原则(Dependence Inversion Principle, DIP)
实现细节依赖抽象,抽象不能依赖实现细节。
5.接口隔离原则(Interface Segregation Principle, ISP)
使用多个专门的接口,而不使用单一的总接口
6.合成复用原则(Composite Reuse Principle, CRP)
应该尽量使用对象组合,而不是继承来达到复用
7.迪米特法则(Law of Demeter, LoD)
一个软件实体应当尽可能减少与其他实体直接发生作用
参考:1.《代码简洁之道》
2.《设计模式》
http://blog.csdn.net/lovelion/article/details/7536532