从核心数据编程指南(我的重点):
默认情况下,Core Data 为托管对象类的建模属性(属性和关系)动态创建高效的公共和原始get 和 set 访问器方法。
虽然自从我开始使用 Objective-C 以来,我一直在愉快地使用 Core Data 和mogenerator,但我从来没有看过这意味着什么,直到由于涉嫌使用私有 API 而导致应用提交被拒绝。关于生成setPrimitiveTypeValue:
方法的长篇故事,但不是我的问题。
在阅读指南时,我偶然发现了实体属性的公共和原始访问器的想法。另一个引用,但更进一步:
例如,给定一个具有属性 的实体
firstName
,Core Data 会自动生成firstName
、setFirstName:
、primitiveFirstName
和setPrimitiveFirstName:
。
原始访问器有什么用?只是为了让您可以直接分配一个 BOOL 值,而无需将其包装在 NSNumber 中吗?如果是这样,为什么 mogenerator 会遇到生成各种<Attribute>Value
, set<Attribute>Value:
, primitive<Attribute>Value
,setPrimitive<Attribute>Value:
访问器的麻烦?
我很困惑,谁能帮帮我?
相关问题:
- 核心数据原始访问器(无答案)
- 为什么我需要在核心数据项目中使用原始访问器方法?(已回答)