# design_patterns **Repository Path**: zzw_open/design_patterns ## Basic Information - **Project Name**: design_patterns - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-25 - **Last Updated**: 2025-11-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 设计模式学习示例 本项目展示了多种常见的设计模式实现,适用于Java开发者学习和参考。项目结构清晰,每个模式都有对应的示例代码。 ## 项目结构 - `pattern/behavioral_patterns` - 行为型模式示例 - `pattern/creational_patterns` - 创建型模式示例 - `pattern/structural_patterns` - 结构型模式示例 - `principles` - 设计原则示例 ## 设计模式示例 ### 行为型模式 - **命令模式**:模拟餐厅点餐流程 - **解释器模式**:实现简单的数学表达式解析 - **迭代器模式**:自定义集合的迭代器实现 - **中介者模式**:模拟房屋租赁中介系统 - **备忘录模式**:游戏角色状态保存与恢复 - **观察者模式**:微信公众号订阅示例 - **责任链模式**:请假审批流程模拟 - **状态模式**:电梯状态转换 - **策略模式**:不同营销策略展示 - **模板方法模式**:炒菜过程模板 - **访问者模式**:动物喂养示例 ### 创建型模式 - **建造者模式**:自行车构建 - **工厂模式**:咖啡工厂实现 - **抽象工厂模式**:咖啡+甜品组合工厂 - **原型模式**:奖状对象克隆 - **单例模式**:多种单例实现方式 ### 结构型模式 - **适配器模式**:SD卡-TF卡读取适配 - **桥接模式**:操作系统与视频文件解码 - **组合模式**:菜单树结构处理 - **装饰器模式**:快餐加料功能 - **外观模式**:智能家居控制系统 - **享元模式**:俄罗斯方块图形复用 - **代理模式**:火车票销售代理 ## 设计原则示例 - **开闭原则**:输入法皮肤切换 - **里氏替换原则**:矩形与正方形关系演示 - **依赖倒置原则**:电脑组件装配 - **接口隔离原则**:安全门功能接口划分 - **迪米特法则**:明星-经纪人-粉丝交互 - **单一职责原则**:汽车类设计 - **合成复用原则**:颜色与车型的组合使用 ## 使用方法 1. 克隆项目:`git clone https://gitee.com/zzw_open/design_patterns.git` 2. 导入IDE:支持IntelliJ IDEA或Eclipse 3. 运行示例:每个模式都有对应的`Client.java`或`Test.java`入口类 ## 项目贡献 欢迎提交PR完善更多设计模式示例或优化现有实现。请遵循项目代码风格并提供清晰的注释。 ## 许可证 本项目采用MIT开源协议。