• Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL

Chapter 4. Programs and Documents > Three Kinds of Programs: Cocoa, Carbon, Cla...

4.8. Three Kinds of Programs: Cocoa, Carbon, Classic

Mac OS X was supposed to make life simpler. It was supposed to eliminate the confusion and complexity that the old Mac OS had accumulated over the years—and replace it with a smooth, simple, solid system.

In a few years, that's exactly what Mac OS X will be. For the moment, however, you're stuck with running three different kinds of programs, each with different characteristics: Cocoa, Carbon, and Classic.

The explanation involves a little bit of history and a little bit of logic. To take full advantage of Mac OS X's considerable technical benefits, software companies must write new programs for it from scratch. So what should Apple do—send out an email to the authors of the 18,000 existing Mac programs, suggesting that they throw out their programs and rewrite them from the bottom up?

At big companies like Microsoft and Adobe, such a suggestion would wind up on the Joke of the Week bulletin board.

Instead, Apple gave software companies a break. It wrote Mac OS X to let programmers and software companies choose precisely how much work they wanted to put into compatibility with the new system. The various levels include:

  • Do nothing at all (Classic). Let's face it: Software companies go out of business, unprofitable product lines are dropped, and shareware authors go off to law school. All of them leave behind orphaned programs that run only in the old Mac OS.

    Your Mac OS X machine can still run this library of older software. When you try to open one of these older programs, Mac OS X launches a Mac OS 9 simulator called the Classic environment (Section Suddenly your screen is taken over by the ghost of Mac OS 9. Sure, you leave behind all the trappings (and benefits) of Mac OS X—its new look, most Exposé features, crash protection, and so on—but at least you're still running your favorite programs.

  • Update the existing programs (Carbon). If software companies are willing to put some effort into getting with the Mac OS X program, they can simply adapt their existing software so that it works with Mac OS X. The resulting software looks and feels almost every bit like a true Mac OS X program—you get the crash protection, the good looks, the new Save dialog box, and so on—but behind the scenes, the bulk of the computer programming is the same as it was in Mac OS 9. These are what Apple calls Carbonized programs, named for the technology (Carbon) that permits them to run in Mac OS X.

    Carbonized programs include Microsoft Office, AppleWorks, iTunes, Photoshop, FileMaker, and, believe it or not, the Finder itself.

  • Write new programs from scratch (Cocoa). As Mac OS X becomes a bigger and bigger hit, more and more programmers and software companies create new programs exclusively for it. The geeks call such programs Cocoa applications—and they're the best of all. Although they may look exactly like Carbonized programs, they feel a little bit more smooth and solid. More importantly, they offer a number of special features not offered by Carbonized programs.

    Many of the programs that come with Mac OS X are true Cocoa applications, including iChat, iCal, Safari, iPhoto, TextEdit, Stickies, Mail, Address Book, and so on. Any new programs Apple releases are also likely to be Cocoa applications.


Having trouble keeping the definitions of Carbon and Cocoa straight? You wouldn't be alone; it's like reading a novel where two characters' names start with the same letter. Here's one way to remember: Carbon programs are generally the older ones, those that might require Carbon-dating techniques to calculate their ages.

  • Creative Edge
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint