ソフトウェアアーキテクチャ博物館AtMuseum
失敗パターン解説
失敗パターン解説
下から上への逆方向依存
説明 | レイヤー化において「下位が上位のサービスを利用する」という逆方向の依存性。 レイヤー化においては「上位が下位のサービスを利用する」という依存性にすること。 すなわち、上位から下位に指示が出て、下位から上位に報告する、というルール。
下位から上位への「報告」の実装は、普通に関数コールにしても良いが双方向依存になってしまいます。 コールバック関数にすることで単方向依存になります。但し、コールバック関数は多用すると、コードで動きが追いかけられなくなってしまいます。 コールバック関数は、インタフェースとして定義して、明示的に設計実装することをお勧めします。 |
---|