Posts tagged “cocoa”.

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

October 30th, 2008

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.

Update: Einstein emulator on the iPhone

April 9th, 2008

After the iPhone SDK was release, I wondered whether it would make sense to throw a Newton emulator in the mix. Shucks, I wondered whether it would even be possible.

Leave it to Newton programmers to actually do the digging.

From Jason on the Newtontalk list:

Well, I started out by ensuring that Einstein would build on the new
SDK. Then tried changing targets to see what would happen. I did this for KLibs as well as Einstein. K Libs seems to build fine as a static library using the new target which was sort of surprising to me but since the BSD subsystem can be installed on the iPhone I thought perhaps it would work. When building Einstein for the new target I run into complications. There are two at the moment that I am facing. One is with missing X11 header files and the other with the K Libs dependency. Not sure why the compiler isn’t finding the X include files since I am certain the X11 SDK is installed and Einstein did build cleanly before. I am sure it’s just a configuration problem in the project that I’ve caused. So far I haven’t had any luck trying to resolve the dependency with K Libs that Einstein has by creating a new target, one that depends upon a new K Libs target for the new target device.

And a reply, from Matthias:

Do not build the target based on X11. X11 is not part of the iPhone
and so it is not part of the iPhone header files (they are different
headers than the system header files). Einstein for iPhone must be built using the special iPhone version of Cocoa, which is quite similar, yet not the same. You have to use UIKit to generate the basic UI and emulator surface.

I don’t know about you, but there’s hope to be found. Newton developers are working on the iNewton as I type this – and that’s a neat feeling. Give them all the support you can!

My hope for the iPhone SDK.

March 6th, 2008

iNewton SDK?

I hope someone takes that $99 developer’s fee, makes a iApp that mimics the Newton’s OS, and gives it away for free on the iPhone App Store.

Shucks, as easy as Steve Jobs made it sound, developing a Cocoa Touch Newton program should be a piece of cake.

Here’s hoping.