mcpField
L
laravel:interfaces-and-di

laravel:interfaces-and-di

github.com/jpcaparas開発157117 回インストール19 週間前に更新
リポジトリ

laravel:interfaces-and-di について

Laravel 開発者向けに、狭いインターフェースの定義、必要な場所への注入、サービスプロバイダーでの実装バインドを説明するスキルです。テストや実装の差し替えに役立ちます。

主な機能

  1. 01狭いインターフェースの定義
  2. 02必要な場所へのインターフェース注入
  3. 03サービスプロバイダーでの実装登録
  4. 04テストでのインターフェースのモック
  5. 05具象実装の差し替え

活用シーン

  1. 01ビジネスロジックの契約定義
  2. 02テストでの依存関係のモック
  3. 03インターフェース実装の置き換え

インストール

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

$npx skills add https://github.com/jpcaparas/superpowers-laravel --skill laravel:interfaces-and-di

インストール後、Claude Code で/laravel:interfaces-and-diを入力して読み込まれたか確認します。

詳細

インターフェースと依存性注入

限定的なインターフェースを定義し、必要な箇所に注入します。サービスプロバイダーで具象実装をバインドします。

interface Slugger { public function slug(string $s): string; }

final class AsciiSlugger implements Slugger {
  public function slug(string $s): string { /* ... */ }
}

$this->app->bind(Slugger::class, AsciiSlugger::class);

メリット:テストが容易になります(インターフェースをモックできます)。契約が明確になり、利用側に手を加えずに実装を差し替えられます。

コメント