Skip to content

About

Agent skill for Java GoF design pattern selection, examples, and refactoring guidance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

Java GoF Patterns

Java GoF Patterns 是一个面向 Java 开发与学习场景的 Codex/Agent Skill,用于帮助选择、解释、实现和重构 23 种 GoF 设计模式。

它的重点不是机械套用模式,而是先判断当前问题是否真的需要设计模式,再给出合适的模式、角色分工、最小 Java 示例、扩展建议和不适用边界。

能力范围

  • 根据业务需求选择合适的创建型、结构型或行为型模式
  • 解释 23 种 GoF 模式的意图、适用场景和常见误用
  • 生成最小可运行 Java 示例
  • 对现有 Java 代码给出模式化重构建议
  • 对比相近模式,例如 strategy vs state、factory-method vs abstract-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 个模式

参考入口

About

Agent skill for Java GoF design pattern selection, examples, and refactoring guidance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages