The development of Carbon and Cocoa in Mac OS X

There exist five separate application runtime environments in Mac OS X. Those applications are Carbon, Cocoa, Classic, Java, and BSD.

The five applications integrated to provide many options to developers. Cocoa is containing a set of software components used to construct applications that run on Mac OS X. We can look Cocoa as a large set of reusable application building blocks to be used for our specific needs.

The most important development of Cocoa and carbon is the assembling reusable components. The assembling reusable components raise the capability to develop programs quickly and easily. The Bundles of executable code and associated resources of Cocoa and carbon can be loaded and executed dynamically. These capabilities support the easy creation and distribution of application plug-ins and extensions.

Cocoa supports all application service features in Mac OS X. For example, Cocoa applications can access the native imaging and printing model of Mac OS X, multimedia standards QuickTime and OpenGL, Internet and BSD services and localization and internationalization are also well supported. You can package your applications for different locales easily, with no code changes for the separation of user interface elements from executable code.

All Cocoa text drawing utilizes the Unicode standards. So you can use sophisticated word processing features with little effort and the text and font systems are particularly flexible.