NSDocument *类仅适用于基于文档的应用程序吗?

时间:2011-08-13 17:47:03

标签: objective-c cocoa

我想知道NSDocument是否仅适用于基于文本/文档的应用程序。我有一个使用多个窗口的应用程序,它们共同组成一个项目。将这些窗口实现为NSDocuments是不是一个好主意?

1 个答案:

答案 0 :(得分:2)

NSDocument为文档建模,但文档不需要基于文本。通常,它是磁盘上文件的内存中表示形式。如果您的应用程序使用特定格式的文件(例如图像或文本或代码或基因组或图形......),则NSDocument通常是建模这些文件时使用的正确类。

但是,如果您的窗口没有模型文件,NSDocument是错误的工具,因为它适用于文件操作。相反,您通常会在每个窗口(或每个密切相关的一组窗口)中使用一个NSWindowController来控制您的UI。