0

私は多数の SMS プロバイダーを持っており、それぞれがファイル システムの個別のディレクトリにあります。各プロバイダ ディレクトリ内のメイン クラスは、ファイル システム内のプロバイダ ディレクトリ外の別の場所にある抽象クラス ProviderAbstract.php を拡張します。

各プロバイダーを個別の composer パッケージにして、個別に開発、テスト、デプロイできるようにしたいと考えています。問題は、各プロバイダーが拡張する ProviderAbstract クラスです...この状況での最善のアプローチは何ですか? 各 Provider パッケージ内にクラスのコピーを保持することは解決策ではありません..このタイプの依存関係を解決するための最良の方法は何ですか..

前もって感謝します

4

1 に答える 1

0

これが正しい方法かどうかはわかりません。Monolog や Swiftmailer などにログがある場合、それらはすべて、1 つの composer パッケージ内に「プロバイダー」を持っています。彼らは、他のものを見ずに 1 つのプロバイダーを開発し、それらをテストして、後でパッケージ全体を展開することができます。非常に小さなコンポーネントを独自の composer パッケージに入れることにした場合、多くのオーバーヘッドが発生します。

ただし、それを続けたい場合は、抽象クラスを独自の composer パッケージに抽出し、他のすべてのパッケージにこれを依存関係として持たせることができます。これは、PSR3 ロガー インターフェイスの使用方法です。

于 2013-03-28T10:33:33.547 に答える