# design_pattern **Repository Path**: zhao_weilong/design_pattern ## Basic Information - **Project Name**: design_pattern - **Description**: Java 设计模式学习 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-04-18 - **Last Updated**: 2022-05-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 设计模式学习DEMO - [设计模式学习DEMO](#%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E5%AD%A6%E4%B9%A0demo) - [设计模式的分类](#%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E7%9A%84%E5%88%86%E7%B1%BB) - [设计模式七大原则](#%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E4%B8%83%E5%A4%A7%E5%8E%9F%E5%88%99) - [示例demo](#%E7%A4%BA%E4%BE%8Bdemo) - [参考](#%E5%8F%82%E8%80%83) ## 设计模式的分类 - 创建型 > 用于描述“怎样创建对象”,单例、原型、工厂方法、抽象工厂、建造者等 5 种创建型 - 结构性 > 用于描述如何将类或对象按某种布局组成更大的结构,代理、适配器、桥接、装饰、外观、享元、组合等 7 种结构型模式 - 行为型 > 用于描述类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,以及怎样分配职责, > 模板方法、策略、命令、职责链、状态、观察者、中介者、迭代器、访问者、备忘录、解释器等 11 种行为型模式 ## 设计模式七大原则 - 单一职责 - 接口隔离 - 开闭原则 - 依赖倒置 - 里氏替换 - 迪米特法则 - 合成复用 ## 示例demo - [适配器模式](src/main/java/adapter) - [装饰器模式](src/main/java/decorator) - [工厂方法模式](src/main/java/fatory) - [观察者模式](src/main/java/observer) - [原型模式](src/main/java/prototype) - [代理模式](src/main/java/proxy) - [责任链模式](src/main/java/responsibility) - [单例模式](src/main/java/singleton) - [策略模式](src/main/java/Strategy) - [状态模式](src/main/java/state) - [模板模式](src/main/java/template) - [管道模式](src/main/java/pipeline) ## 参考 [设计模式](https://refactoringguru.cn/design-patterns) [JavaKeeper](http://www.starfish.ink/design-pattern)