循環依存関係を含む問題を見つけて解決する必要があります。この問題では、関係するオブジェクト間に不透明なポインターを格納するか、オブジェクト間の関係を実現するために、より高いレベルで別のクラスを使用します。
そこで、銀行と口座の2つのクラスがあるという単純な問題を考えました。銀行には口座のリストが含まれており、口座には銀行へのポインターが含まれています。循環依存が達成されました。
しかし、私が満たさなければならない別の条件があります。それは、クラスとそれらの間の関係が互いに独立してテストできることを確認する必要があるということです。
Bankクラスは、アカウント間で資金を転送したり、資金を引き出したり追加したりするなど、アカウントで処理を行う関数を使用します。また、アカウントには、変数を編集する同様の関数が含まれています。
アカウントクラスのテストは、クラスをインスタンス化して関数をテストするのと同じくらい簡単ですが、依存関係から独立した別のクラスに依存するクラスをテストするにはどうすればよいですか?そして、2つのクラス間の関係をどのようにテストしますか?
循環依存に関する情報を見つけるのに苦労していますが、それ以外は避ける必要がありますが、大規模なプロジェクトでは避けるのが難しい場合があります。