行为型设计模式

文章目录

概述

行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。

行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足"合成复用原则",所以对象行为模式比类行为模式具有更大的灵活性。

划分

行为型模式分为:

  • 观察者模式
  • 模板方法模式
  • 策略模式
  • 职责链模式
  • 状态模式
  • 命令模式
  • 中介者模式
  • 迭代器模式
  • 访问者模式
  • 备忘录模式
  • 解释器模式

其中模板方法模式和解释器模式是类行为型模式,其他的全部属于对象行为型模式。

小结

行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足"合成复用原则",所以对象行为模式比类行为模式具有更大的灵活性。挺多的内容的,好好学完不太容易,可以去学习学习。其实,只要知道其中几种常用的就可以了。我也会写几个常用的,其余的,自己学习吧。

相关推荐
lsswear2 小时前
PHP 设计模式
设计模式·php
ximu_polaris7 小时前
设计模式(C++)-行为型模式-备忘录模式
c++·设计模式·备忘录模式
05候补工程师8 小时前
[实战复盘] 拒绝 AI 屎山!我从设计模式中学到的“调教”AI 新范式
人工智能·python·设计模式·ai·ai编程
sg_knight12 小时前
Python 设计模式:迭代器模式——用优雅的方式遍历一切
python·设计模式·迭代器模式
ximu_polaris18 小时前
设计模式(C++)-行为型模式-解释器模式
c++·设计模式·解释器模式
钝挫力PROGRAMER18 小时前
static final 指向可变集合的设计模式
java·设计模式
霍格沃兹测试学院-小舟畅学20 小时前
我花一周拆解了企业级Skills库的全套设计模式
人工智能·设计模式
kyriewen1121 小时前
你的前端滤镜慢得像PPT?用Rust+WebAssembly,一秒处理4K图
开发语言·前端·javascript·设计模式·rust·ecmascript·powerpoint
混迹中的咸鱼21 小时前
C++ 23种设计模式
设计模式·c++23
咖啡八杯1 天前
GoF设计模式——工厂方法模式
java·后端·设计模式