【发布时间】:2010-07-20 11:05:09
【问题描述】:
我刚刚阅读了有关 Cocoa-Touch 应用程序的 MVC 设计模式,它建议使用模型的属性列表。我的问题是,如果您需要对属性列表中的数据进行一些计算,那么该计算的代码会去哪里?
过去我为我的模型使用了一个单例对象,然后用它来访问数据并进行任何处理,我只是好奇其他人是如何进行设置的......
加里
【问题讨论】:
标签: objective-c cocoa-touch model-view-controller
我刚刚阅读了有关 Cocoa-Touch 应用程序的 MVC 设计模式,它建议使用模型的属性列表。我的问题是,如果您需要对属性列表中的数据进行一些计算,那么该计算的代码会去哪里?
过去我为我的模型使用了一个单例对象,然后用它来访问数据并进行任何处理,我只是好奇其他人是如何进行设置的......
加里
【问题讨论】:
标签: objective-c cocoa-touch model-view-controller
我不认为 plist 是一个模型,它只是一种存储模型数据的方式。这是模型的一部分。您可以使用 SQLite 数据库来存储数据,而无需更改程序的模型。您应该能够更改程序存储其信息的方式,而无需更改控制器部分。
plist 适用于少量数据,最多 50 项左右。在此之后它开始变得不太易于管理,并且数据库是一个更好的选择。如果您想搜索或订购数据库可以让您的生活更轻松。
因此,建议模型(存储)的 plist 仅在某些情况下是正确的。认为 plist is 模型不是全貌。
我发现Big Nerd Ranch iPhone book 中的 MVC 描述是最好的描述之一。
【讨论】:
您可以使用属性列表来存储基本(读取相当平坦)数据。 如果您想从 plist 中读取数据,然后进行计算并将其写回 plist 中的其他字段,这应该没问题。
如果您通过计算暗示您需要一个关系数据库,则以下链接提供了一个简单的比较选项来存储可可应用程序的“模型”部分。
干杯
进化
【讨论】: