私のプログラムが Cocoa のドキュメント フレームワークを使用することでメリットが得られると約 90% 確信していますが、確信が持てないことが 1 つあります。
私が見たすべての例で、 NSDocument サブクラスは常に保存されているファイルを表しており、これは私のアプリケーションに完全に適しているわけではありません。
アプリケーションでディスクに保存されるファイルは、プログラム内で編集されるエンティティのコレクションになります。新しいファイルが作成されると、ユーザーはそのコレクションに含まれる個々のエンティティを編集できます。これには、状態と変更の追跡 (保存、元に戻すなど) が必要です。
ドキュメント ベースのアプリケーションはこのように機能するのでしょうか?それとも、常にフレームワークと戦わなければならないのでしょうか?
私の質問をより明確にするために更新されました:
ファイル内に含まれる個別のエンティティを管理しやすくするため、ファイルをバンドルとして保存することを計画していましたが、私の質問には実際には対応していません。
Microsoft Access のようなプログラムを考えてみてください。ファイルはデータベースですが、ドキュメントはフォーム、レポート、クエリ、マクロなどです。各アイテムは個別のドキュメント ウィンドウで編集され、個々のドキュメントに対して変更を保存または元に戻すことができますが、保存されるのはデータベース全体(すべてのフォーム、レポート、およびクエリを含む) です。