implementing-code について
コードの実装とレビューを行う開発者向けのスキルです。セキュリティ、性能、可読性、テストの手順とチェック項目を示し、変更をローカルテストやコード検査で繰り返し確認します。
主な機能
- 01インジェクション、認証、データ露出の確認
- 02クエリ効率とメモリ問題の点検
- 03SOLID、命名、コメントの評価
- 04境界、エラー、正常系のテスト
- 05テストと整形結果に基づく反復
活用シーン
- 01機能実装や修正時の品質確認
- 02入力検証とエラー処理のレビュー
- 03N+1クエリやメモリリークの発見
- 04コードレビューとテストのチェックリスト作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dralgorhythm/ claude-agentic-framework --skill implementing-codeインストール後、Claude Code で/implementing-codeを入力して読み込まれたか確認します。
詳細
コードの実装
ワークフロー
- セキュリティチェック:インジェクションの脆弱性、認証の問題、機密データの漏えい
- パフォーマンスチェック:N+1 クエリ、メモリリーク、非効率なアルゴリズム
- 可読性チェック:SOLID 原則、命名規則、コメント
- テストチェック:境界ケース、エラー経路、正常系
フィードバックループ
- 機能または修正を実装します
- ローカルテスト(ユニットテスト/統合テスト)を実行します
- リンター/フォーマッターを実行します
- 失敗した場合は修正して繰り返します
参考実装
SOLID に準拠したクラス(TypeScript)
// Abstraction (Interface Segregation)
interface ILogger {
log(message: string): void;
}
interface IUserRepository {
save(user: User): Promise<void>;
}
// Domain Entity
class User {
constructor(public readonly id: string, public readonly email: string) {}
}
// Implementation (Single Responsibility)
class UserService {
constructor(
private readonly userRepository: IUserRepository,
private readonly logger: ILogger
) {}
public async registerUser(email: string): Promise<User> {
if (!email.includes('@')) {
throw new Error("Invalid email format");
}
const user = new User(crypto.randomUUID(), email);
await this.userRepository.save(user);
this.logger.log(`User registered: ${user.id}`);
return user;
}
}
コードレビューのチェックリスト
- ハードコードされた秘密情報や認証情報がない
- すべての外部データに入力検証を行っている
- 意味のあるメッセージを含む適切なエラー処理を行っている
- N+1 クエリのパターンがない
- 関数が単一責任の原則に従っている
- 依存関係はインラインでインスタンス化せず、注入している
- テストで正常系と境界ケースを網羅している
コメント
Markdown 対応