123-java-design-patterns について
Java 開発者向けに、具体的な課題に応じた設計・統合パターンの選択、レビュー、実装を支援するスキルです。アプリケーションコードから REST、Kafka、永続化、横断的な関心事まで扱い、トレードオフと過剰な抽象化の回避を重視します。
主な機能
- 01課題に基づく Java パターン選定
- 02従来型のアプリケーション設計パターン
- 03REST API 設計ガイド
- 04Kafka とイベント駆動パターン
- 05永続化と統合のガイド
- 06ビルドと検証手順
活用シーン
- 01Java コードの設計レビュー
- 02REST API 契約とエラー処理の設計
- 03Kafka の信頼性あるイベント配信の計画
- 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.md123-database-persistence-patterns.md123-java-design-patterns.md123-rest-api-patterns.md123-kafka-event-driven-patterns.md詳細
Java の設計パターンと統合パターン
Java 開発者がパターン名だけでなく、課題の兆候、実装のコンテキスト、トレードオフに基づいてパターンを選択できるようにします。
このスキルで扱う内容
- アプリケーションコード向けの従来の Java 設計パターン:生成、構造、振る舞いの各パターン
- リソース設計、コントラクト、冪等性、バージョニング、エラー処理に関する REST API パターン
- イベントスキーマ、パーティショニング、冪等性、再試行、アウトボックス、サーガに関する Kafka およびイベント駆動型パターン
- リポジトリ、トランザクション、集約、ロック、マイグレーション、読み取りモデルに関するデータベースおよび永続化パターン
- 腐敗防止層、レジリエンス、可観測性、信頼性の高いメッセージ境界に関する横断的な統合パターン
対象範囲: Java システムで実用的なパターンを説明、レビュー、実装する際に、このスキルを使用してください。まずシンプルなコードを優先し、実際の複雑さを軽減する場合、境界を保護する場合、テスト容易性を高める場合、または変更をより安全にする場合にのみ、パターンを導入してください。
制約
パターンに関するガイダンスは、課題主導で具体的であり、Java プロジェクトに安全に適用できるものでなければなりません。
- 課題を最優先:パターンの名前を挙げたり適用したりする前に、設計上の負荷を特定してください
- パターンありきにしない:パターンが存在するというだけで抽象化を追加せず、変化がない場合はシンプルなコードを優先してください
- ビルドの安全性:コードを変更する場合は、リファクタリングの前に
./mvnw compileまたはmvn compileを実行し、変更後に./mvnw clean verifyまたはmvn clean verifyを実行してください - 参照の選択:作業に着手する前に、関連する参照資料を読んでください:Java コードパターン、REST API パターン、Kafka/イベント駆動型パターン、データベース/永続化パターン、または横断的な統合パターン
- トレードオフを必ず提示:推奨するパターンについて、その利点、コスト、使用すべきでない状況を説明してください
このスキルを使用する場面
- Java の設計パターンを適用する
- Java コードの設計パターンをレビューする
- REST API パターンを選択する
- Kafka のイベント駆動型パターンを設計する
- データベースの永続化パターンを改善する
- レジリエントな統合パターンを追加する
ワークフロー
- 設計上の負荷を特定する
具体的な課題を明確にします。オブジェクトの生成、振る舞いの変化、API コントラクトの進化、イベント配信、永続化の一貫性、統合の信頼性、その他の繰り返し発生する設計上の要因などです。
- 関連する参照資料を選択する
該当する参照資料のみを読みます: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。
- 役に立つ最小限のパターンを推奨する
設計上の負荷に対処できる、最もシンプルなパターンを選びます。責務、境界、テスト、運用、または進化への安全性がどのように変わるかを示してください。
- パターンを実装または文書化する
コードの変更が求められた場合は、プロジェクトの規約に従い、対象を絞った Java または設定の変更を行います。設計上の助言が求められた場合は、必要に応じて図、例、リクエスト/レスポンスの形式、イベントの形式、またはトランザクションのフローを提示してください。
- 結果を検証する
設計が引き続き理解しやすく、テスト可能で、運用上安全であることを確認します。コードを変更した場合はプロジェクトのビルドを実行し、残っているトレードオフを明示してください。
参照資料
詳細なガイダンス、例、制約については、以下を参照してください。