设计模式之总结篇(设计模式六大原则以及设计模式三种类型)_WSYW126的博客-优快云博客
类图各种箭头介绍

建造型设计模式
功能:作用于对象的创建,将对象的创建与使用分离.
结构型设计模式
功能:将类或对象按照某种布局组成更大的结构.
行为型设计模式
功能:作用于类或对象之间相互协作完成单个对象无法单独完成的任务,以及怎么分配职责.


一、设计原则
-
单一职责原则
- 一个类只负责一个功能领域的相关职责.
-
开闭原则(Open Close Principle)
- 对扩展开放,面向修改代码封闭.
- 面向抽象编程,封装变化.(在不修改源代码的情况下,完成系统功能的扩展.)
-
依赖倒转原则(Dependence Inversion Principle)
-
高层模块(调用者)不应该依赖于低层模块(被调用者).两个都应该依赖于抽象.
-
抽象不应该依赖细节,细节应该依赖于抽象.
-
关于依赖
-
将程序隔离、封装,在程式发生变化时其它地方不受影响.
-
需要使用面向接口编程、抽象编程.调用类就不在依赖被调用类,而是依赖抽象.
-
在程式运行中又需要具体的被调用类提供服务,因为接口、抽象类需要重写.就产生了一个矛盾:调用者类无法实例化被调用者类,但调用者类又要使用到被调用类.
-
为了解决这个矛盾,要使用一种解决方案,调用者定义一个注入点,用与被调用者注入,而实例化调用者类根据情况,先实例化对应的被调用者类,注入到调用者类中,解决这个矛盾.

-
依赖关系如何传递?
-
通过接口传递(接口注入)
-
通过构造方法传递
-
通过set方法传递(我还是喜欢用get,set属性来做)

-
-
-
-
-
里氏代换原则(Liskov Substitution Principle)
-
所有使用父类的地方,都可以使用子类代替.
-
-
接口隔离原则(Interface Segregation Principle)指导设计接口的原则.
-
一个类对另一个类的依赖应该建立在最小接口上.
-
接口尽量细分,不要在一个接口中放很多方法.
-
-
合成复用原则(Composite Reuse Principle)组合
-
合成复用原则是将已有的对象纳入到新对象中,作为新对象的对象成员来使用,新对象可以调用已有对象的功能,从而达到复用.
-
怎么判断是使用继承还是组合?
-
has->有->使用组合. 例:汽车有红色、白色
-
is->是->使用继承. 例:学生是人类,有属性(性别,年龄,体重)
-
-
-
迪米特法则(最少知道原则)(Demeter Principle)指导设计类的原则.
-
它要求一个对象对其他对象有最少的了解.(最少知道原则)
-
降低类之间的耦合.
-
迪米特法则就是类在创建方法与属性时要遵守的法则.
-
迪米特法则简单理解为:只和直接朋友通信.
-
成员对象
-
方法参数
-
方法返回值
-
注意:出现在局部变量中的类,不是直接朋友.
-
-
3540





