依存関係の注入にセッターを使用していて、多くのクラスがすべて同じ依存関係を必要とする場合、依存関係のセッターを含む基本クラスをそれらすべてのクラスに拡張させる必要がありますか?
たとえば、次のようになります。
Page、Article、Comment の 3 つのクラスがあり、これらはすべて $db と $user に依存しているとします。
次のような基本クラスの依存関係を持つことの利点と欠点は何ですか:
class Dependencies
{
private $database;
private $user;
final public function setDatabase($dbh)
{
$this->database = $dbh;
}
final public function setUser($user)
{
$this->user = $user;
}
}
そして、依存関係の拡張として他のクラスを持つ
class Article extends Dependencies
{
public function __construct()
{
// some code
}
// some other functions that use $this->database and $this->user
}
別々のクラス (Article、Page、および Comment) のそれぞれに setDatabase と setUser が存在するのではなく。
ありがとう。