OK、これが私の状況で、どの設計アプローチを使用すればよいか本当にわかりません。だから、私は私の特定のケースについていくつかの意見を読んでうれしいです...
シナリオ:
- タブベースのアプリケーションを持っています
- 最初に、タブの作成/操作を処理する
NSWindowController
(例: ) のインスタンスを作成します。MyDocumentManager
- 各タブには、
MyDocument
さて、メニューアクションを実装しようとしています。
- メニューごとに個別のメニュー コントローラがあります (実際には、
NSObject
関連するすべての機能をグループ化したサブクラスです)。MyFileMenuController
MyFileMenuController
ファイル メニューのアクションは、Interface Builder を介してオブジェクト内のアクションにリンクされています。
質問 :
- 現在のドキュメントの詳細にアクセスし、関連するすべてのアクションを実行できるように、( my で作成された)について
MyFileMenuController
「知っている」可能性はありますか? 何か案は?どのアプローチが望ましいですか?MyDocumentManager
AppDelegate.m
私のアイデア:
- クラスからクラスへのオブジェクトの受け渡し (それほど素晴らしい音ではありません)
- シングルトン (ただし、正直なところ一度も使用したことがなく、それが私の特定のケースであるかどうか/どのように使用されるかはわかりません)
- 通知と通知リスナー
- (反対側から見るとわかりませんが) デリゲート メソッド