Java设计模式:23种设计模式全面解析(超级详细)
设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。
1995 年,GoF(Gang of Four,四人组/四人帮)合作出版了《设计模式:可复用面向对象软件的基础》一书,共收录了 23 种设计模式,从此树立了软件设计模式领域的里程碑,人称「GoF设计模式」。
这 23 种设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性,以及类的关联关系和组合关系的充分理解。
当然,软件设计模式只是一个引导,在实际的软件开发中,必须根据具体的需求来选择:
Java 是典型的面向对象的编程语言,所以本教程以 Java 为基础来讲解这 23 种设计模式,如果你不了解 Java,请猛击《Java教程》学习。
1995 年,GoF(Gang of Four,四人组/四人帮)合作出版了《设计模式:可复用面向对象软件的基础》一书,共收录了 23 种设计模式,从此树立了软件设计模式领域的里程碑,人称「GoF设计模式」。

这 23 种设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性,以及类的关联关系和组合关系的充分理解。
当然,软件设计模式只是一个引导,在实际的软件开发中,必须根据具体的需求来选择:
- 对于简单的程序,可能写一个简单的算法要比引入某种设计模式更加容易;
- 但是对于大型项目开发或者框架设计,用设计模式来组织代码显然更好。
关于本教程
本教程虽然命名为“Java设计模式”,但是设计模式并不是 Java 的专利,它同样适用于 C++、C#、JavaScript 等其它面向对象的编程语言。Java 是典型的面向对象的编程语言,所以本教程以 Java 为基础来讲解这 23 种设计模式,如果你不了解 Java,请猛击《Java教程》学习。
- 教程目录:
- 1. 软件设计模式概述
- 2. GoF 的 23 种设计模式的分类和功能
- 3. UML统一建模语言是什么?
- 4. UML类图及类图之间的关系
- 5. 类关系记忆技巧
- 6. UMLet的使用与类图的设计
- 7. 什么才是优秀的软件架构?
- 8. 如何正确使用设计模式?
- 9. 开闭原则——面向对象设计原则
- 10. 里氏替换原则——面向对象设计原则
- 11. 依赖倒置原则——面向对象设计原则
- 12. 单一职责原则——面向对象设计原则
- 13. 接口隔离原则——面向对象设计原则
- 14. 迪米特法则——面向对象设计原则
- 15. 合成复用原则——面向对象设计原则
- 16. 一句话总结软件设计七大原则
- 17. 创建型模式的特点和分类
- 18. 单例模式(单例设计模式)详解
- 19. 原型模式(原型设计模式)详解
- 20. 简单工厂模式
- 21. 工厂方法模式(详解版)
- 22. 抽象工厂模式(详解版)
- 23. 建造者模式(Bulider模式)详解
- 24. 创建型模式应用实验
- 25. 结构型模式概述(结构型模式的分类)
- 26. 代理模式(代理设计模式)详解
- 27. 适配器模式(Adapter模式)详解
- 28. 桥接模式(Bridge模式)详解
- 29. 装饰器模式(装饰设计模式)详解
- 30. 外观模式(Facade模式)详解
- 31. 享元模式(详解版)
- 32. 组合模式(详解版)
- 33. 结构型模式应用实验
- 34. 行为型模式概述(行为型模式的分类)
- 35. 模板方法模式(模板方法设计模式)详解
- 36. 策略模式(策略设计模式)详解
- 37. 命令模式(详解版)
- 38. 责任链模式(职责链模式)详解
- 39. 状态模式(详解版)
- 40. 观察者模式(Observer模式)详解
- 41. 中介者模式(详解版)
- 42. 迭代器模式(详解版)
- 43. 访问者模式(Visitor模式)详解
- 44. 备忘录模式(详解版)
- 45. 解释器模式(详解版)
- 46. 行为型模式应用实验
- 47. 一句话归纳设计模式
编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。
通俗易懂,深入浅出,一篇文章只讲一个知识点。
文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。
文章不涉及代码,不烧脑细胞,人人都可以学习。
当你决定关注「编程帮」,你已然超越了90%的程序员!

微信扫描二维码关注