epo*_*gee 17 core-data objective-c mogenerator
从核心数据编程指南(我的重点):
默认情况下,Core Data 为托管对象类的建模属性(属性和关系)动态创建有效的公共和原始 get和set访问器方法.
虽然我一直在使用核心数据和mogenerator愉快,因为我开始对Objective-C的,我从来没有一起来看看这是什么意思,直到提交的应用得到了拒绝因涉嫌使用私有API的.关于生成setPrimitiveTypeValue:方法的长篇故事,但不是我的问题.
在阅读指南时,我偶然发现了实体属性的公共和原始访问器的概念.另一个引用,但进一步说:
例如,给定与属性的实体
firstName,核心数据自动生成firstName,setFirstName:,primitiveFirstName,和setPrimitiveFirstName:.
什么是原始访问者?是这样你可以直接分配BOOL值,而不是将它包装在NSNumber中吗?如果是这样,为什么会mogenerator已通过生成各种的麻烦了<Attribute>Value,set<Attribute>Value:,primitive<Attribute>Value,setPrimitive<Attribute>Value:存取?
我很困惑,谁能帮助我?
相关问题:
jrt*_*ton 10
据我了解,原始方法执行实际获取和设置,但不发出任何KVC或KVO通知('willAccessValueForKey'等).public方法调用原始方法,但在KVO调用中包装调用.因此,从对象外部,您通常会调用公共方法,但如果您因内部原因需要使用对象的属性(例如,验证或派生其他属性),您可以使用原始方法来避免触发所有通知.
我欢迎对答案进行任何更正或澄清,因为这是我感兴趣但不完全精通的主题.
| 归档时间: |
|
| 查看次数: |
4385 次 |
| 最近记录: |