私はPHPで親子クラスを使いたいが、サブクラスには入れない。たとえば、Houseクラスがあり、HouseにDoorsとWindowsがあるとします。phpオブジェクトの設計親子
class House {
}
class Door {
}
class Window {
}
私たちは2つのタイプのドアを持っています。ガレージドアとフロントドアの2つのタイプがあります。
class GarageDoor extends Door {
}
class FrontDoor extends Door {
}
どのように私はハウスとドアの間とハウスと私はドアを作成するとき、そこに少なくとも家でなければならないと私は特定の家を知っている必要があることを、このようなウィンドウ間の関係を作成することができます。そして、私が家を削除すると、そのドアと窓も削除する必要があります。どうやってやるの?
Factoryパターンが役立ちます正しい方法でオブジェクトの作成を管理し、依存関係注入を使用します。 Observerパターンを使用すると、分解されるオブジェクトをリッスンしてアクションを実行できます。 –
ドアは家の中のコンポーネントなので、House for Doorオブジェクト(または複数のドアがある場合はDoorオブジェクトの配列)にクラスプロパティが必要です。同様に、DoorのHouseへの参照があるかもしれませんが、これはカップリングにつながるかもしれませんが、私はこの場合重要ではないと考えています。 – SOFe