Цепочка доступа NSManagedObject: это плохая практика? - PullRequest
0 голосов
/ 14 октября 2011

Извините, это будет немного расплывчато, но здесь идет речь:

Я помню, как однажды прочитал, что вы не должны делать следующее для прохождения отношений NSManagedObject, поскольку каскадирование может закончиться частью вашей цепочкив NIL:

self.roomItemInstance.roomInstance.report

Я обнаружил, что части цепочки действительно могут быть установлены в NIL после каскада в результатедействие удаления и т. д., и это вызывает небольшие проблемы в моем коде.

Я хочу знать, правильно ли я считаю, что это плохая практика, и если да, то что вы рекомендуете вместо этой маргаритки?цепочка?

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 14 октября 2011

Насколько я могу судить, это вполне приемлемый способ обхода свойств NSManagedObjects.Я полагаю, что Apple на самом деле рекомендует использовать эти методы доступа (либо пунктирные, как вы показали, либо заключенные в скобки [свойство объекта]) в отличие от типичной альтернативы getValue forKey при доступе к атрибутам / свойствам.

0 голосов
/ 14 октября 2011

Полагаю, что все в порядке, поскольку объект Objective C nil может реагировать на селекторы. Если какое-либо из отношений в цепочке возвращает ноль, вы будете отправлять селекторы получателя на ноль для оставшихся отношений, которые автоматически возвращают ноль. Apple на самом деле рекомендует вам сделать это вышеуказанным способом, потому что они хотят сказать: «Видите, разве Objective C не крутой? Вы не могли бы сделать это на других языках».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...