On 2013-06-19, at 3:21 AM, Rick Mann <[email protected]> wrote:

> 
> On Jun 18, 2013, at 22:42 , Dave Fernandes <[email protected]> wrote:
> 
>> The foolproof way to do it is to have the transient attributes recalculated 
>> each time they are accessed. In other words, they are simply getter methods. 
>> But if they are expensive to compute, this might not work well. If you are 
>> using bindings or KVO, you then have a class method + 
>> (NSSet*)keyPathsForValuesAffecting<AttributeName> that ensures observers of 
>> the transient attribute are notified when underlying non-transient 
>> attributes change.
> 
> In this case, it's not accessed terribly frequently, so that's what I ended 
> up doing. I do use KVO a lot, although I don't see how that helps in this 
> case (to trigger re-computing the transient value).

It's not useful if you want to pre-compute and cache the transient values. It 
is just useful if the transient is a getter, and you need to notify the 
observers.

> 
> Pity there's not an update method that can be overridden in 
> NSManagedObjectSubclasses when this happens. I guess my objects could KVO 
> themselves…
> 
> -- 
> Rick
> 
> 
> 


_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to