Java设计模式学习笔记(一)——六大原则

写笔记的意图是强化记忆,其实博客看了不少,但是看过没有应用场景,不写代码要不了多久也就忘了,所以还是再写一遍,加强一下记忆。

设计模式简介

所谓设计模式,就是一套被人们反复使用的、经过分类编目的代码设计经验的总结,它是软件开发人员在开发过程中面临的一般问题的解决方案,是经过长期的试验和错误所获得的。

设计模式的六大原则

1.开闭原则(Open Close Principle)

开闭原则:意思是对扩展开放,对修改关闭。我们在扩展程序的功能时,不能对原代码进行修改,这是为了便于程序后期的维护和升级。为了达到这样的效果,我们不得不在代码的编写过程中使用接口和抽象类。

2.里氏代换原则(Liskov Substitution Principle)

里氏代换原则是面向对象设计的基本原则之一,里氏代换原则要求基类能够出现的地方子类一定能够出现。LSP是继承复用的基石,只有当派生类可以代替基类并且不影响程序的正常功能时,基类才能够真正地被复用,而派生类也能够在基类的基础上增加新的功能。里氏代换原则是对开闭原则的补充。实现开闭原则的关键在于抽象化,子类与基类的继承关系是抽象过程的具体途径,所以里氏代换原则是抽象化的实现规范。

3.依赖倒转原则(Dependency Inversion Principle)

依赖倒转原则的内容是:抽象不依赖于细节,细节要依赖于抽象。换言之就是要针对接口编程,而不是针对实现编程。它要求我们在编码的过程中,传递参数或者处理关联关系时,要尽量使用高层次的抽象类而不用具体类。为了保证该原则的应用,具体类应当只实现抽象类或者接口定义的方法,而不应该新增方法,否则将无法调用具体类中的新增方法。

4.接口隔离原则(Interface Segregation Principle)

使用多个专门的接口,而不要使用单一的总接口,即客户端不要实现那些它不需要的接口。
它所表达的意思是,接口仅仅定义客户端需要的行为,隐藏不需要的行为,需要提供尽可能小的接口代替大的总接口。该原则有利于降低程序中类之间的耦合度。

5.迪米特法则(Demeter Principle)

又称最少知道原则:一个实体,应当尽可能少地与其他实体发生相互作用。
迪米特法则要求我们在设计程序时,尽量减少对象之间的交互,如果一个对象不可避免地需要调用另一个对象的方法,那么它们的交互应当要通过一个合理的第三方来转发这种调用。

6.单一职责原则(Single Responsibility Principle)

一个类只负责一个领域的相应职责。
它是实现“高内聚,低耦合”的指导方针,也是最简单又最难应用的原则。

猜你喜欢

转载自blog.csdn.net/ascend2015/article/details/80211241
今日推荐