mcpField
1
144-java-data-oriented-programming

144-java-data-oriented-programming

github.com/jabrena開発456377 回インストール1 日前に更新
リポジトリ

144-java-data-oriented-programming について

Java 開発者向けに、イミュータブルなレコード、純粋変換、検証によるデータ指向の設計とリファクタリングを案内するスキルです。変更前のコンパイルと、変更後のビルド検証を求めます。

主な機能

  1. 01データ構造と振る舞いの分離
  2. 02イミュータブルなレコードと構造
  3. 03純粋なデータ変換の合成
  4. 04ID 参照によるフラットなデータ
  5. 05純粋関数によるデータ検証
  6. 06汎用データアクセスインターフェース

活用シーン

  1. 01Java データモデルのリファクタリング
  2. 02振る舞いとイミュータブルデータの分離
  3. 03データ整合性の検証
  4. 04データ変換パターンのレビュー

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jabrena/plinth --skill 144-java-data-oriented-programming

インストール後、Claude Code で/144-java-data-oriented-programmingを入力して読み込まれたか確認します。

同梱ファイルreferences/144-java-data-oriented-programming.md

詳細

Java のデータ指向プログラミングのベストプラクティス

Java でデータ指向プログラミングを適用します。レコードを使ってデータと振る舞いを分離し、不変データ構造を使い、変換には純粋関数を用い、ID 参照を使ったフラットな非正規化構造を採用します。必要に応じて汎用型から具体型へ変換し、純粋な検証関数と柔軟な汎用データアクセス層を利用します。すべての変換は明示的で追跡可能な、明確な純粋関数型のステップで構成してください。

このスキルで扱う内容

  • 関心の分離:データ構造(レコード、POJO)と振る舞い(ユーティリティクラス、サービス)
  • 不変性:レコード、final フィールド、変換では新しいインスタンスを生成
  • 純粋なデータ変換:入力のみに依存し、副作用のない関数
  • フラットな非正規化データ:深いネストの代わりに ID 参照を使用
  • 具体化は必要になるまで行わない:動的データには Map<String,Object> を使い、処理時にレコードへ変換
  • データの整合性:検証結果を返す純粋な検証関数
  • 柔軟な汎用データアクセス:汎用 CRUD インターフェースと、交換可能な実装

対象範囲: 参照資料は、各主要領域について、(良い/悪いコードパターンの)例を中心に構成されています。該当する例に基づいて推奨事項を適用してください。

制約事項

データ指向プログラミングに関する推奨事項を適用する前に、プロジェクトがコンパイルできることを確認してください。コンパイルに失敗した場合は、作業を進めないでください。改善を適用した後は、完全な検証を実行してください。

  • 必須: 変更を適用する前に ./mvnw compile または mvn compile を実行してください
  • 安全性: コンパイルに失敗した場合は、ただちに停止してください。問題が解決するまで先へ進まないでください
  • 検証: 改善を適用した後に ./mvnw clean verify または mvn clean verify を実行してください
  • 適用前: 各データ指向プログラミングパターンの詳細な良い例/悪い例、制約事項、安全策について、参照資料を読んでください

このスキルを使用する場面

  • データ指向プログラミングでコードを改善する
  • データ指向プログラミングを適用する
  • データ指向プログラミングを使ってコードをリファクタリングする
  • レコードと純粋関数で Java のデータをモデル化する
  • Java の振る舞いを不変データ構造から分離する
  • 純粋な Java 関数でデータの整合性を検証する

ワークフロー

  1. データ指向の変更を行う前にプロジェクトをコンパイルする

./mvnw compile または mvn compile を実行し、コンパイルに失敗した場合はただちに停止してください。

  1. データ指向プログラミングの参照資料を読み、モデル設計を評価する

references/144-java-data-oriented-programming.md を読み、データと振る舞いの分離や不変変換に適した箇所を特定してください。

  1. データ指向のリファクタリングを適用する

レコード、純粋な変換関数、フラットな構造、明示的な検証を使って、選択した改善を実装してください。

  1. 完全なビルドで検証する

改善を適用した後に ./mvnw clean verify または mvn clean verify を実行してください。

参照資料

詳細なガイダンス、例、制約事項については、references/144-java-data-oriented-programming.md を参照してください。

コメント