Mac OS X Carbon vs. Cocoa – what’s the story?

Saw this rumor (a few times, actually) over at Webmonkey: a Cocoa OS X Finder may be on its way, starting with Snow Leopard.

But wait. Isn’t the Finder an all-OS X beast?

That got me wondering what, exactly, is the difference between the Cocoa and Carbon development environments. I’m not programmer, so I needed a low-brow explanation.

Just before Apple launched OS X, Macworld had this article describing the basic differences between the two. I like to reference the original Mac OS X introduction video, by Mr. steve Jobs, as a primer, too. He goes into detail about the different levels (kernel, Carbon/Cocoa, OpenGL, etc.), which helps.

My basic understanding: Carbon is for applications that need to reference the old, OS 9 way of doing things while operating in OS X. Cocoa is an all-OS X environment, and lets developers use stuff like Core Audio and Core Animation.

Even at Apple, the two platforms have their place. Mail is a Cocoa app. iTunes is a Carbon app – a hold-over from OS 9. PhotoShop, as it stands now, is a Carbon application. Again, in terms of development, it’s an OS 8/9 relic. But that may be changing. Adobe has already produced a Cocoa-based app in Lightroom, so hope springs eternal.

Now, 32 bit versus 64 bit? That’s a whole ‘nother ball of wax.

Post a comment.