Java GoF Patterns 是一个面向 Java 开发与学习场景的 Codex/Agent Skill,用于帮助选择、解释、实现和重构 23 种 GoF 设计模式。
它的重点不是机械套用模式,而是先判断当前问题是否真的需要设计模式,再给出合适的模式、角色分工、最小 Java 示例、扩展建议和不适用边界。
- 根据业务需求选择合适的创建型、结构型或行为型模式
- 解释 23 种 GoF 模式的意图、适用场景和常见误用
- 生成最小可运行 Java 示例
- 对现有 Java 代码给出模式化重构建议
- 对比相近模式,例如
strategyvsstate、factory-methodvsabstract-factory - 引用每个模式对应的说明文档和最小示例代码
java-gof-patterns/
├── SKILL.md
├── agents/
│ └── openai.yaml
├── assets/
│ └── examples/
│ └── <pattern>/
│ └── <Pattern>Example.java
├── references/
│ └── patterns/
│ └── <pattern>.md
├── entities.json
└── mempalace.yaml
- Singleton
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
- Chain of Responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
使用 Skills CLI 安装:
npx skills add https://github.com/zenggl-cn/java-gof-patterns -g -y也可以手动把仓库内容放到本地 skills 目录,例如:
C:\Users\<your-user>\.agents\skills\java-gof-patterns或:
C:\Users\<your-user>\.codex\skills\java-gof-patterns使用 $java-gof-patterns,帮我判断这个支付渠道创建逻辑适合用工厂方法还是抽象工厂。
使用 $java-gof-patterns,用 Java 写一个策略模式的最小示例,并说明怎么扩展到真实项目。
使用 $java-gof-patterns,分析这段 if/else 状态处理代码是否适合重构成状态模式。
开发型问题默认输出:
推荐模式:
原因:
核心角色:
最小示例:
扩展建议:
何时不要用:
学习型问题默认输出:
模式意图:
适用场景:
结构说明:
最小示例:
与相近模式的区别:
- 先判断是否需要模式,再选择模式
- 优先小步重构,避免为了模式而模式
- 示例保持最小、清晰、可运行
- 开发建议需要说明适用边界和误用风险
- 引用具体模式文档时按需读取,不一次性加载全部 23 个模式
- Skill 说明:SKILL.md
- 模式说明:references/patterns
- Java 示例:assets/examples