mcpField
1
123-java-design-patterns

123-java-design-patterns

github.com/jabrena开发456243 次安装1 天前更新
代码仓库

关于 123-java-design-patterns

面向 Java 开发者的技能,按具体问题选择、评审和实现设计及集成模式。覆盖应用代码、REST、Kafka、持久化与横切关注点,并强调权衡和避免不必要的抽象。

主要功能

  1. 01按问题选择 Java 模式
  2. 02经典应用设计模式
  3. 03REST API 设计指导
  4. 04Kafka 与事件驱动模式
  5. 05持久化与集成指导
  6. 06构建与验证步骤

适用场景

  1. 01评审 Java 代码设计
  2. 02设计 REST API 契约与错误处理
  3. 03规划可靠的 Kafka 事件交付
  4. 04改进持久化或集成边界

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jabrena/plinth --skill 123-java-design-patterns

安装后在 Claude Code 中输入/123-java-design-patterns确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
123-cross-cutting-integration-patterns.md
123-database-persistence-patterns.md
123-java-design-patterns.md
123-rest-api-patterns.md
123-kafka-event-driven-patterns.md

详细介绍

Java 设计与集成模式

帮助 Java 开发者根据问题信号、实现上下文和权衡来选择模式,而不只是看模式名称。

此技能涵盖哪些内容?

  • 应用代码中的经典 Java 设计模式:创建型、结构型和行为型模式
  • REST API 模式:资源设计、契约、幂等性、版本控制和错误处理
  • Kafka 和事件驱动模式:事件架构、分区、幂等性、重试、outbox 和 saga
  • 数据库与持久化模式:存储库、事务、聚合、锁定、迁移和读取模型
  • 横切集成模式:防腐层、弹性、可观测性和可靠的消息边界

范围: 使用此技能解释、评审并在 Java 系统中实现实用模式。优先从简单代码入手;只有在模式能降低实际复杂度、保护边界、改善可测试性或让变更更安全时,才引入模式。

约束

模式指导必须以问题为导向、具体且适用于 Java 项目。

  • 问题优先:在命名或应用模式之前,先确定设计压力
  • 不要为了模式而选模式:不要仅因存在某种模式就添加抽象;没有变化需求时,优先选择简单代码
  • 确保构建安全:修改代码时,重构前运行 ./mvnw compile 或 mvn compile,变更后运行 ./mvnw clean verify 或 mvn clean verify
  • 选择参考资料:行动前阅读相关参考资料:Java 代码模式、REST API 模式、Kafka/事件驱动模式、数据库/持久化模式或横切集成模式
  • 必须说明权衡:对于任何推荐的模式,都要说明其优势、成本以及不适用的场景

何时使用此技能

  • 应用 Java 设计模式
  • 评审 Java 代码中的设计模式
  • 选择 REST API 模式
  • 设计 Kafka 事件驱动模式
  • 改进数据库持久化模式
  • 添加弹性集成模式

工作流

  1. 确定设计压力

明确具体问题:对象创建、行为变化、API 契约演进、事件传递、持久化一致性、集成可靠性,或其他反复出现的设计力量。

  1. 选择相关参考资料

只阅读匹配的参考资料:references/123-java-design-patterns.md、references/123-rest-api-patterns.md、references/123-kafka-event-driven-patterns.md、references/123-database-persistence-patterns.md 或 references/123-cross-cutting-integration-patterns.md。

  1. 推荐最精简实用的模式

选择能够解决设计压力的最简单模式。说明它如何改变职责、边界、测试、运维或演进安全性。

  1. 实现或记录模式

如需修改代码,请遵循项目约定,进行有针对性的 Java 代码或配置变更。如需设计建议,请酌情提供图表、示例、请求/响应结构、事件结构或事务流程。

  1. 验证结果

确认最终设计仍然易于理解、可测试且运维安全。对于代码变更,运行项目构建,并说明仍存在的权衡。

参考资料

详细指导、示例和约束请参阅:

评论

支持 Markdown