Apple の Core Data Programming Guide から:
Core Data は、マネージド オブジェクト クラスの効率的なパブリックおよびプリミティブの get および set 属性アクセサー メソッドと関係アクセサー メソッドを動的に生成します。
...
プリミティブ アクセサー メソッドは、コア データがデータにアクセスするための最も基本的なデータ メソッドとして使用することを除いて、「通常の」または公開キー値コーディング準拠のアクセサー メソッドに似ています。その結果、キー値アクセスを発行したり、通知を監視したりしません。別の言い方をすれば、primitiveValueForKey: および setPrimitiveValue:forKey: に対するものであり、valueForKey: および setValue:forKey: に対するパブリック アクセサ メソッドとは何ですか。
プリミティブ アクセサー メソッドは、KVO 通知をトリガーしないため、パブリック アクセサーよりも優れたパフォーマンスを発揮することが期待されます。この理論を Time Profiler で効果的にテストする方法はありますか? (確かに、2 つの呼び出しを独自の for ループに入れ、何億回も反復して結果を比較するほど簡単なことはありません...)
明らかに、プリミティブ アクセサーは、マネージド オブジェクト サブクラスの外部のオブジェクトまたは関数によって呼び出されるべきではありませんが、クラス内からそれらを使用すべきでない場合はどのような場合でしょうか?