# DesignPattern **Repository Path**: janyork/DesignPattern ## Basic Information - **Project Name**: DesignPattern - **Description**: 学习设计模式,提供包含详细中文注释的DEMO,正在构建常用设计模式的文档说明和DEMO。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://blog.ideaopen.cn - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-03-04 - **Last Updated**: 2024-05-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DesignPattern 学习设计模式,提供包含详细中文注释的DEMO,正在构建常用设计模式的文档说明和DEMO。 ## 项目说明 本项目是我在学习设计模式的过程中,构建的`DEMO`,包含了常用的设计模式的`DEMO`,以及一些常用的设计模式的文档说明。 1. 项目中的`DEMO`都是基于`Java`语言构建的,使用`IDEA`进行构建与调试。 2. 项目中的文档说明都是基于`Markdown`语言构建的,使用`Typora`进行编写与预览。 3. 项目虽然是`Maven`项目,但是并没有使用`Maven`,因为无需使用第三方依赖。 4. 这不是完全准确的设计模式,因为我只是在学习设计模式的过程中,构建的`DEMO`,可能会有一些错误,如果有错误,欢迎指正。 5. 项目中的文档说明,可能会有一些错误,如果有错误,欢迎指正。 6. 如果出现了直接性、严重性、不可忽视性的错误,还请各位大佬直接在原有代码上进行修改,然后提交`PR`,我会及时检查并合并。 7. 如果出现一些特别的问题,如:另一种实现、特别的实现、更优雅的实现,请勿直接修改原有代码,而是在`java` 目录下创建一个全新的包,并使用合理的名称(翻译),然后包后添加`Branch` 一部分说明,如:`DesignPatternBranchForJanYork`,即代表:单例模式一个来自`JanYork`分支,包下必需要编写`README.md` 文件,对`DEMO`进行详细说明。 ## GIT 规范 Git提交规范请尽量参考:[Git提交规范](/doc/Git协作规范.md) # 最近更新 ## 2023-03-02 - 构建了单例模式的DEMO ## 2023-03-04 - 构建了工厂模式(简单、抽象、方法)的DEMO - 提交了工厂模式与单例模式的代码 ## 2024-02-05 - 构建了策略模式(普通、工厂+策略)的DEMO - 构建了面向对象五大原则的示例与说明 ## 2024-02-06 - 构建了装饰器模式的DEMO ## 2024-02-07 - 构建了代理模式的DEMO - 构建了原型模式的DEMO - 补充类深浅拷贝的说明 ## 2024-02-08 - 构建了模版方法模式的DEMO - 构建了迪米特法则的说明 ## 2024-02-10 - 构建了外观模式的DEMO ## 2024-02-17 - 构建了建造者模式(Builder)模式的DEMO - 构建了观察者模式(Observer)模式的DEMO ## 2024-02-21 - 构建了状态模式的DEMO - 构建了适配器模式的DEMO ## 2024-05-22 - 构建了备忘录模式的DEMO # 项目结构 TODO:正在慢慢完善中