このプロジェクトは、クリーン アーキテクチャ アプリのアプリケーションの一部である
の依存関係注入を管理するためのクラスのセットです。
使用されるフレームワークとは独立しています。
Git : https://git.small-project.dev/lib/small-clean-application
パッケージリスト : https://packagist.org/packages/small/clean-application
composer require small/clean-application
パラメータは、UseCase コンストラクターに自動的に挿入されるように管理されます。
ファサード静的オブジェクトを通じてパラメータを設定できます:
\Small\CleanApplication\Facade::setParameter('test', [ 'host' => 'http://clean.com', 'port' => 80 ]);
ファサードからも入手できます:
echo \Small\CleanApplication\Facade::getParameter('test.host');
出力:
http://clean.com
ユース ケースは、Small\CleanApplication\Contract\UseCaseInterface を実装するユース ケースを具体化したクラスです。
たとえば、これは文字列を返す単純なユースケースです:
ファサードを使用して使用できます:
use Small\CleanApplication\Test\Feature\Fixture\UseCase\TestUseCase; use \Small\CleanApplication\Test\Feature\Fixture\UseCase\TestRequest; echo \Small\CleanApplication\Facade::execute(TestUseCase::class, new TestRequest());出力:
aユースケースに別のユースケースを挿入する
ユースケース コンストラクターに別のユースケースを挿入できます:
getBefore() . $this->testUseCase->execute($request)->getStatus() ); } }プロパティ testUseCase は TestUseCase オブジェクトとして自動的に作成されます。
ユースケースにパラメータを挿入する
ユースケースのコンストラクターにプロパティを入力して名前を付けることで、ユースケースにパラメーターを挿入できます:
testUseCase_param . $request->getBefore() . $this->testUseCase->execute($request)->getStatus() ); } }アンダースコア ('_') はパラメータ構造体の配列キーを区切ります。
と一致する例を次に示します。 $testUseCase_param :
\Small\CleanApplication\Facade::setParameter('testUseCase', ['param' => 'p']);インターフェース
3 つのインターフェイス構造のコード:
これが TestDependency リクエスト クラスの例です:
before; } }
そして彼のインターフェース:
そして、これが応答の実装です:
status; } }そして彼のインターフェース:
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3