本节书摘来自华章出版社《Core Data应用开发实践指南》一书中的第2章,第2.4节,作者 (美)Tim Roadley,更多章节内容可以访问云栖社区“华章计算机”公众号查看
2.4 属性
属性(attribute)是实体的特征(property)。在本书范例程序中,Item实体代表可以添加到购物清单里的东西。为了给Item实体拟定出合适的属性,我们需要考虑购物清单里所有货品的共性。一开始,你可能会拟定出下面这两个属性:
Item name (货品名称)
Item quantity (货品数量)
属性的名称必须以小写字母开头,而且不应该与NSObject或NSManagedObject方法重名。Xcode不允许开发者违背这条规则,如果违背了,它会给出警告,比方说,把实体的属性名设为“description”就是非法的。
根据Item实体来创建NSManagedObject子类的时候,类中会出现与实体的属性同名的各项特性。与Objective-C中的其他对象一样,你也可以在NSManagedObject子类上面用“点”(.)来引用类特性。使用item.name及item.quantity来获取特性值可以令代码更易理解。
请按下列步骤修改Grocery Dude,以便把两个新的属性加入其中:
- 在选定Item实体的前提下,点击Add Attribute按钮,新增名为name及quantity的属性。添加完成后的效果如图2-3所示。
向实体中添加属性的时候,必须指定它所表示的数据“类型”(type)。属性的默认类型是Undefined(未定义)。你可以为每个属性指定不同的数据类型,而且有时可能还要预想一下这个属性在未来的用法。可供选择的属性类型有很多,而且作为Objective-C程序员,其中某些类型你可能已经比较熟悉了。