Since Objective-C 2.0, we\'ve had @properties and autogenerated accessor methods. So today, what is the point of key-value coding? Under what circumstances is it
KVC can be useful if you are using Key Value Observers to detect value changes on an object. If you wanted to use KVO and @properties you would have to wrap every mutator method with:
[self willChangeValueForKey:@"bar"];
bar = foo;
[self didChangeValueForKey:@"bar"];