2018-10-19 10月18日の学び オブジェクト指向 デザインパターン Bridgeパターン 継承と密結合 抽象クラスは機能を提供し、継承するサブクラスは実装を提供するという役割分担がある。 抽象クラスとサブクラスが密結合になるため、機能と実装が密結合となる。 そのためn個の複数の抽象クラスがm個の同じ実装を保つ場合は、n*m個のサブクラスが生成される。 機能と実装の分離 機能と実装を分離するのがBridgeパターン。 機能は機能で継承し実装は実装で継承する。 サブクラスの数はn+m個となる。 各機能クラスが実装を参照する場合は、サブクラスの継承ではなく、実装クラスのインスタンスを参照する。