什么是最好的方法? NSDictionary或基于自定义对象的数据结构?

时间:2016-07-29 17:02:58

标签: objective-c data-structures

我正在和几位开发人员讨论根据最新趋势哪种方法最符合目标C?

例如:如果我以json形式从服务器填充数据,我应该使用哪种方法?

我见过我的朋友过去在json对象中填充数据,在 NSdictiory,NSMututable Dictionary 中填充的数量较少,苹果建议采用哪种数据结构?

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

我个人非常喜欢自定义对象(或Structs for Swift),因为它让我更容易分辨对象具有的属性。如果你只是绕过词典,那就更难(在我看来)记住你拥有的对象,它有什么键,以及它有什么嵌套对象。如果你有命名类(再次,这些应该是Swift中的Structs),那么你(和编译器)可以很容易地知道它们具有什么属性。另外,您可以轻松地为对象创建实例方法。

如果您不想自己解析它们的痛苦,那么有一些框架可以管理将服务器响应解析为对象(例如RestKit https://github.com/RestKit/RestKit)。

如果您将Apple的示例代码视为"建议"从Apple,你可以看到他们在他们的“开始开发iOS应用程序”中制作数据模型的方式。在这里:https://developer.apple.com/library/ios/referencelibrary/GettingStarted/DevelopiOSAppsSwift/Lesson6.html。是的,这个例子适用于Swift,但大多数概念都具有可比性。

Apple还拥有" Cocoa Core Competencies" (https://developer.apple.com/library/ios/documentation/General/Conceptual/DevPedia-CocoaCore/ModelObject.html)他们将模态对象定义为"通常是NSObject的子类或...... NSManagedObject的子类。"