《JavaEE》第六周day3学习笔记-设计原则、设计模式

一、面向对象设计原则

(一)概述


类的设计原则有七个,包括:
开闭原则里氏替换原则最少知识原则 (迪米特法则)单一职责原则接口隔离原则依赖倒置原则组合 / 聚合原则
对比如下表:

口诀 名称 定义 频率
开闭原则 (OCP) 面向修改关闭,面向扩展开放 ★★★★★
接口隔离原则 (ISP) 使用多个专门的接口,而不使用单一的总接口 ★★☆☆☆
组合/聚合原则 (CRP) 尽量使用对象组合,而不是继承来达到复用的目的 ★★★★☆
里氏替换原则 (LSP) 所有引用父类的地方,都能用其子类替换 ★★★★★
最少知识原则 (LoD) 一个软件实体应当尽可能少地与其他实体发生相互作用 ★★★☆☆
单一职责原则 (SRP) 一个类只负责一个功能领域中的相应职责 ★★★★☆
依赖倒置原则 (DIP) 抽象不应该依赖于细节,细节应该依赖于抽象 ★★★★★

(二)七大原则之间的关系


七大原则之间并不是相互孤立的,彼此间存在着一定关联,一个可以是另一个原则的加强或是基础。违反其中的某一个,可能同时违反了其余的原则;开闭原则是面向对象的可复用设计的基石。其他设计原则是实现开闭原则的手段和工具。

注意: 开闭原则是核心原则,其它六大原则是开闭原则的补充

七大原则分成如下两部分:

  • 设计目标:开闭原则、里氏替换原则、最少知识原则
  • 设计方法:单一职责原则、接口隔离原则、依赖倒置原则、组合/聚合原则

二、设计模式

(一)概述


  • 设计模式是一套被反复使用、多数人知晓的、经过分类编目的代码设计经验的总结,它与具体的语言无关,是一种思想。
  • 掌握了面向对象的思想,才可以更好的理解设计模式,而反之亦然。
  • 设计模式是在软件工程实践过程中,程序员们总结出的良好的编程方法。
  • 设计模式一共有23种。
  • 这23种设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性,以及类的关联关系和组合关系的充分理解。

(二)设计模式的分类


1.创建型模式

  • 创建型模式(5种):单例模式,工厂方法模式,抽象工厂模式,建造者模式,原型模式。

2.结构型模式

  • 结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。

3.行为型模式

  • 行为型模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式 。

设计模式丨菜鸟教程
https://www.runoob.com/design-pattern/design-pattern-tutorial.html

发布了31 篇原创文章 · 获赞 0 · 访问量 802

猜你喜欢

转载自blog.csdn.net/u010761121/article/details/103760710