设计模式--六大原则
Posted 盗帅_tim
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式--六大原则相关的知识,希望对你有一定的参考价值。
- 设计模式六大原则
- 单一职责原则:
- 不要存在多于一个导致类变更的原因。**通俗的说,即一个类只负责一项职责
- 里氏替换原则:
-
里氏替换原则通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的功能。它包含以下4层含义:
- 子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。
- 子类中可以增加自己特有的方法。
- 当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。
- 当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。
看上去很不可思议,因为我们会发现在自己编程中常常会违反里氏替换原则,程序照样跑的好好的。所以大家都会产生这样的疑问,假如我非要不遵循里氏替换原则会有什么后果?
后果就是:你写的代码出问题的几率将会大大增加。
- 依赖倒置原则
- 高层模块不可直接依赖低层模块。尽量通过接口传递即策略方式
- 接口隔离原则。
- 尽量不要一个接口搞定所有需求,能拆分就拆分 增加系统的灵活性和可维护性
- 迪米特法则:
- 只与直接的朋友通信。首先来解释一下什么是直接的朋友:每个对象都会与其他对象有耦合关系,只要两个对象之间有耦合关系,我们就说这两个对象之间是朋友关系。耦合的方式很多,依赖、关联、组合、聚合等。其中,我们称出现成员变量、方法参数、方法返回值中的类为直接的朋友,而出现在局部变量中的类则不是直接的朋友。也就是说,陌生的类最好不要作为局部变量的形式出现在类的内部。
- 开闭原则:
- 对修改关闭,对新增开放
以上是关于设计模式--六大原则的主要内容,如果未能解决你的问题,请参考以下文章