为什么我需要在核心数据项目中使用原始访问器方法?
我正在阅读有关核心数据的内容并注意以下内容:
默认情况下,Core Data 动态地
创建高效的公共和原始的
获取和设置访问器方法
建模属性(属性和
管理对象的关系)
课程...
例如,给定一个实体
属性firstName,核心数据
自动生成名字,
setFirstName:、primitiveFirstName 和
setPrimitiveFirstName:.
我仍然不确定原始访问器方法是什么?它们如何工作?何时以及为什么我需要使用它们而不是普通的访问器方法?
thanks
在普通类中,您通常不会使用原始访问器,但 Core Data 经常使用它们。最常见的场景:您编写自定义访问器(以执行维护、创建默认对象、处理持久属性的瞬态包装器等),但想要使用 Core Data 的优化存储。如果优化的访问器是普通访问器,那么您的自定义访问器将阻止其可用,但您只需使用原始访问器即可。
此外,您从 Xcode 获得的默认访问器包括在多对多关系中添加或删除对象的方法。如果这些方法使用普通访问器,则普通访问器将触发更改通知整套。相反,他们使用原始访问器并为他们正在更改的部分创建自己的更改通知。
最重要的是,原始访问器是获得优化存储的唯一方法。如果没有它们,您将不得不使用实例变量,Apple 不建议这样做。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)