私のプロジェクトには、ドキュメント管理システムがあります。基本Documentクラスといくつかの派生クラスがあります。DocumentManagerドキュメントを開く/閉じる/アクティブにする操作を管理するクラスもあります。
およびそのDocument派生クラスは、ロード、クローズなどの際に何かを実行する必要がある場合がありますが、状態の変更はマネージャー クラスによって制御されるため、現在、クラスによって呼び出されるクラスにはOnLoaded()、などの (仮想) メソッドがあります。これらのメソッドを公開する必要がないように思われることを除けば、問題なく動作します。OnClosed()DocumentDocumentManager
別の設計は、DocumentManagerクラス起動イベントを作成し、各Documentインスタンスをこれらのイベントにサブスクライブすることです。私見では、大きな違いはありませんが、メモリリークのリスクが生じます。
私は、これらのどれもが「解決策」ではなく、問題に対するベスト プラクティスがあると直感的に感じています。誰か教えてください。