В книге "Cocoa Шаблоны проектирования" автор иногда объявляет свойство в @interface как только для чтения:
// .h
@property (readonly, copy) NSArray *shapesInOrderBackToFront;
а затем добавляет безымянную категорию в файл реализации (.m) следующим образом:
// .m
@interface MYShapeEditorDocument ()
@property (readwrite, copy) NSArray *shapesInOrderBackToFront;
@end
Любая идея о том, почему? Мне непонятно, как этот подход лучше или более необходим, чем первоначально объявляя свойство "readwrite".