面向对象开发-设计原则与设计模式

目录

一、前提:

二、面向对象编程七大原则:

三、面向对象编程围绕着七大原则的二十四种设计模式:

六种建造型设计模式:

七种结构性设计模式:

十一种行为性设计模式:

四、学习设计模式需要注意的:

问题1:部分设计模式在代码实现规范上存在着相同的结构

原因1:


一、前提:

每次学习设计原则与设计模式都能有不一样的理解;因此之后的每次学习都要会在此博文进行相应的修改与补充。

二、面向对象编程七大原则:

  1. 开闭原则
  2. 迪米特原则
  3. 合成复用原则
  4. 依赖倒置原则
  5. 里氏代换原则
  6. 单一责任原则
  7. 接口隔离原则

三、面向对象编程围绕着七大原则的二十四种设计模式:

六种建造型设计模式:

  1. 简单工厂模式
  2. 工厂方法模式
  3. 抽象方法模式
  4. 单例模式
  5. 原型模式
  6. 建造者模式

七种结构性设计模式:

  1. 适配器模式
  2. 享元模式(很少被使用)
  3. 装饰模式
  4. 代理模式
  5. 组合模式
  6. 桥接模式
  7. 外观模式

十一种行为性设计模式:

  1. 观察者模式:(被观察者含观察者,当被观察者执行被观察操作时,执行通知观察者操作)
  2. 命令模式:(继承/实现命令接口,每个命令实现一个实体类)
  3. 职责链模式:(任务交由职责链执行,通过迭代方法找到对应职责对象执行任务)
  4. 解释器模式
  5. 迭代器模式
  6. 中介者模式:(也称仲裁者模式,多同事对象协同使用时,仲裁者管理的同事对象执行操作需经过仲裁者仲裁,仲裁结果由仲裁者调用相应同事对象方法执行,同事对象不可擅自执行)
  7. 备忘录模式:(用特定对象将对象属性值抽离出,用于属性的回归与记录)
  8. 状态模式:(用类表示系统或者对象的状态,能将复杂程序分解开,减少if/else的使用)
  9. 策略模式:(类中策略实现对象可更改,使用的策略方法为通用抽象方法)
  10. 模板方法模式:(抽象类中模板方法以抽象类/接口对象抽象方法进行编写)
  11. 访问者模式:(FiyWeight模式,共享对象,减轻内存压力;注意分清那些该共享,那些不该共享。本质的,不会更改的可作为共享对象,外在的,会更改的不符业务逻辑不做为共享对象)

四、学习设计模式需要注意的:

问题1:部分设计模式在代码实现规范上存在着相同的结构

如结构性设计模式下的装饰模式与代理模式。

原因1:

这是因为设计模式是一种设计思想,是为了解决开发中遇到的设计问题;装饰模式的作用是对装饰对象的功能进行增强,代理模式的作用是对代理对象的功能进行控制。我们在学习设计模式中要侧重学习的是设计模式的语义,而不是其实现形式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浅尝即止何来突破

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值