Java设计模式 | 设计模式概述和分类

独孤求败五重境界

  1. 利剑("凌厉刚猛,无坚不摧,弱冠前以之与河朔群雄争锋。")
  2. 软剑("紫薇软剑,三十岁前所用,误伤义士不祥,乃弃之深谷。")
  3. 重剑("重剑无锋,大巧不工。四十岁前恃之横行天下。")
  4. 木剑("四十岁后,不滞于物,草木竹石均可为剑。")
  5. 无剑("自此精修,渐进于无剑胜有剑之境。")

设计模式介绍

  1. 设计模式是程序员在面对同类软件工程设计问题所总结出来的有用的经验,模式不是代码 ,而是某类问题的通用解决方案,设计模式(Design pattern)代表了最佳的实践。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
  2. 设计模式的本质是提高软件的维护性,通用性和扩展性,并降低软件的复杂度
  3. 《设计模式》,作者是Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides Design(俗称"四人组GOF")
  4. 设计模式并不局限于某种语言。

设计模式类型

设计模式分为3种类型 ,共23种

  1. 创建型模式:单例模式、抽象工厂模式、原型模式、建造者模式、工厂模式。
  2. 结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
  3. 行为型模式:模板方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链(责任链)模式。

github笔记

相关推荐
devilnumber12 小时前
Java 递归算法 详解 + 核心要点 + 实战运用 + 避坑指南
java·开发语言·算法
asdfg125896314 小时前
JavaBean是什么?怎么理解?有什么用途?
java·开发语言
dsyyyyy110114 小时前
JavaScript变量
开发语言·javascript·ecmascript
z落落15 小时前
C#WinForm 窗体切换与窗体传值(登录跳转案例)+WinForm 窗体传值(从上往下传、从下往上传)
开发语言·windows·c#
allway215 小时前
How to Echo Multiline to a File in Bash [3 Methods]
开发语言·chrome·bash
weixin_4624462315 小时前
手把手教你用 Bash 脚本自动更新 /etc/hosts —— 自动绑定网卡 IP 与节点名
开发语言·tcp/ip·bash
一个梦醒了15 小时前
安装git bash选项推荐
开发语言·git·bash
摇滚侠15 小时前
SpringMVC 入门到实战 文件上传 75-77
java·后端·spring·maven·intellij-idea
GIS数据转换器16 小时前
城市排水生命线安全运行监测平台深度解析
java·运维·人工智能·python·安全·数据挖掘·无人机
ct97816 小时前
React 状态管理方案深度对比
开发语言·前端·react