Oleg,

by all means, go ahead with what you started and spend more time learning about KVC/KVO.

Yes, this is used in many many projects and I personally would really miss it if it wouldn’t be there. Actually, as you described yourself, if it wouldn’t be there, you’d had to brew something similar yourself. Which I did, coincidental, like 15 years ago under Mac OS 7 or so. Only that Apple can spend a lot more resources than you (I guess) or me (I’m sure) in making this "right". And they did.

Yes, it has a learning curve. And yes, it is sometimes unfortunate that the inner workings are a black box and can not be looked at with the debugger. Nevertheless, these are minor disadvantages in comparison to the whole thing.

Amin already mentioned all the advantages of KVC/KVO as provided by Apple, including the integration with other Cocoa technologies, which a home-brewn solution could never provide.

Concerning Core Data: it is equally great - inside its specs. Just take the build-in multi-level undo and redo support. Another great reason to use KVC/KVO, by the way: when Core Data undoes something, KVO is the way to get notified about these changes. Done consistently, this works simply beautiful.

And I wouldn’t restrict Core Data to database+forms apps. You can certainly use it for a drawing application. Whether it is the best solution for this kind of application depends - as always - on many details.

Hope this helps a little
Kai


On 21.8.2008, at 16:41, Oleg Krupnov wrote:

Thanks Amin for responding.

You are correct that there's no need to reinvent the wheel, and that's
exactly what I'd like to avoid, that's why I am now re-reading about
KVC/KVO and reconsidering it.

So, does everybody really always use KVC/KVO for implementing MVC, in
all projects? Is this the recommended best practice?

BTW does anyone use Core Data? I've watched the video tutorial and it
looks like too much magic. I would never guess how to make Core Data
work for a drawing application like the Sketch. Is Core Data rather
for database+forms apps?

Thanks.
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/kai%40granus.net

This email sent to [EMAIL PROTECTED]

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to