繁体   English   中英

类属性与NSArray / NSDictionary

[英]Class properties vs NSArray / NSDictionary

我想要一个自定义的类对象来保存数据,并以某种方式感到创建约80个属性并不是实现它的最佳方法。

大多数属性都是布尔值,所以我正在考虑创建数组(键/值)或(可能更好)附加到对象的NSDictionary来保存数据。 这有意义还是我应该留在酒店?

补充:不同方法是否有一般的利弊? 我必须搜索哪些关键字/概念才能找到有关该一般性问题的讨论?

提前致谢

如果您期望某些行为,则应使用类来创建对象(在以后的程序中)。 我的意思是,对象-不仅仅是存储变量的东西。 它还假定某种活动(称为行为)。 属性不仅是设置某些值(作为对象的特征)的方法,还是影响此行为的方法(您可以添加额外的代码部分,除了保存数据(某些检查或smth.else)之外)。

而且,如果您只需要存储数据的结构-不仅更好,那么将它们存储为数组或字典是更合乎逻辑的步骤。

字典在大多数情况下会更好,因为您可以通过键名访问存储的值。 而且您的代码将更容易理解。 但是数组应该(我不知道,仅假设是这样)访问速度更快(在其他字符串中找到字符串键比在递增数字序列中索引更难)。

NSArray在索引容器中存储Foundation对象(基础NS型对象,例如NSNumberNSString等)。 没有NSArray键/值对。 您将使用NSDictionary在键值对中存储Foundation对象。

80的东西很多。 您可以将这些分组吗? 这可能会使此数据集的维护更易于管理。

我同意您最好使用一个对象来保存这些值。 这将使您的代码更容易阅读/理解。 我会使用NSDictionary而不是数组,因为这样您就可以按名称访问每个布尔值。 数组将意味着您必须按索引访问元素,这使得代码更难以理解。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM