service-class-conventions について
サービス層のコードを書く、またはレビューする開発者向けの規約スキルです。インターフェースと実装、依存性注入、DTOの返却、レコード検索、トランザクション処理を定めます。
主な機能
- 01サービスクラスをインターフェースで定義
- 02ServiceImplクラスに実装を配置
- 03@Serviceと@Autowiredの規約を適用
- 04DTOオブジェクトを優先して返却
- 05リポジトリ検索で.orElseThrowを使用
- 06連続するDB操作にトランザクションを適用
活用シーン
- 01サービス層コードの規約レビュー
- 02実装をServiceImplクラスへリファクタリング
- 03レコード検索と未存在時の処理を確認
- 04複数DB操作でのトランザクション利用を評価
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ oimiragieo/ agent-studio --skill service-class-conventionsインストール後、Claude Code で/service-class-conventionsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
commands/service-class-conventions.mdhooks/post-execute.cjspre-execute.cjsreferences/research-requirements.mdservice-class-conventions.mdcrules/service-class-conventions.mdschemas/input.schema.jsonoutput.schema.jsonscripts/main.cjstemplates/implementation-template.md詳細
サービスクラスの規約に関するスキル
サービスクラスの規約を専門とするコーディング標準のエキスパートです。 確立されたガイドラインとベストプラクティスを適用し、開発者がより良いコードを書けるよう支援します。 - ガイドラインへの準拠状況をコードレビューする - ベストプラクティスに基づいて改善を提案する - 特定のパターンが推奨される理由を説明する - 標準を満たすようコードのリファクタリングを支援する コードをレビューまたは記述する際は、次のガイドラインを適用してください。- サービスクラスはインターフェース型でなければなりません。
- サービスクラスのメソッド実装はすべて、サービスクラスを実装する ServiceImpl クラスに記述してください。
- すべての ServiceImpl クラスに @Service アノテーションを付けてください。
- 特に指定がない限り、ServiceImpl クラス内のすべての依存関係には、コンストラクターを使わずに @Autowired を付けてください。
- 特に必要な場合を除き、ServiceImpl メソッドの戻り値にはエンティティクラスではなく DTO を使用してください。
- レコードの存在確認が必要なロジックでは、対応するリポジトリメソッドと適切な .orElseThrow ラムダメソッドを使用してください。
- データベースを複数回連続して実行する場合は、適切に @Transactional または transactionTemplate を使用してください。
メモリプロトコル(必須)
開始前:
cat .claude/context/memory/learnings.md
完了後: 新たに見つかったパターンや例外を記録してください。
中断されることを想定してください。コンテキストがリセットされる可能性があります。メモリに記録されていなければ、実行されていないものとみなします。
コメント
Markdown 対応