我们有一个鞋盒式的应用程序,我们希望在Lion中成为一流的公民。这意味着集成Auto-Save&版本等等。目前我们没有以文档为中心的模型,我们只使用普通的核心数据堆栈。
UIPersistentDocument提供了一种非常简单的方法来集成Auto-Save& amp;版本和我看到两个选项可以选择与新API集成:
我听到苹果公司代表对我们应采取的方法提出的矛盾意见,在开始实施之前澄清事情会很棒。虽然我认为1.不应该使用它也很诱人,因为我们可以免费获得很多东西。我甚至找不到关于手动实现Auto-Save& amp;核心数据应用程序中的版本。
我真的倾向于使用1.但我看到了一些问题:
如果我们只想集成iCloud同步,我肯定不会考虑为我们的应用程序使用以文档为中心的模型,因为Core Data直接支持它。如果我们坚持目前的非基于文档的范例,我最担心的是开发人员的开销。
您是否有任何建议或想法如何将鞋盒应用程序集成到新的Lion世界中?
答案 0 :(得分:3)
我担心你被迫使用第一个选项。版本在NSDocumentController * sic *中实现,因此您必须使用某种NSDocument
来获取版本之外的任何内容。我想想你还需要在NSWindowController
中将你的应用程序窗口添加到该文档中,以便在顶部获得漂亮的小弹出菜单。问题是版本或多或少是一个完全不透明的特征......
但是有一个问题你必须自己回答:你想在应用程序的哪些部分加入版本?在恢复数据时,将所有放在一个文件中真的有意义吗?版本还原(除了复制和粘贴)在文件系统级别上发生。因此,总是让所有东西一次恢复真的有意义吗?如果您的答案是否定的,您甚至可能需要将模型分割成多个较小的文件......
在下一个主要版本发布之前,不要指望这里有所改进。这就是我从工程师的评论中猜到的......