Linked by Thom Holwerda on Wed 6th Jul 2005 22:12 UTC
Permalink for comment 644
To read all comments associated with this story, please click here.
To read all comments associated with this story, please click here.
News
Linked by Thom Holwerda on 05/21/13 15:53 UTC
Linked by Thom Holwerda on 05/20/13 22:43 UTC
Linked by Thom Holwerda on 05/20/13 21:50 UTC
Linked by Thom Holwerda on 05/19/13 23:15 UTC
Linked by Thom Holwerda on 05/19/13 23:11 UTC, submitted by Drumhellar
Linked by Thom Holwerda on 05/18/13 21:06 UTC
Linked by Thom Holwerda on 05/18/13 7:37 UTC
Linked by fran on 05/18/13 1:38 UTC
Linked by Thom Holwerda on 05/17/13 23:35 UTC, submitted by kragil
Linked by MOS6510 on 05/17/13 22:22 UTC
More News »
Sponsored Links



Member since:
---
Cocoa Overview
Cocoa is an object-oriented application environment designed specifically for developing Mac OS X-only native applications. The Cocoa frameworks include a complete set of classes, and for developers starting new Mac OS X-only projects, Cocoa provides the fastest way to full-featured, extensible, and maintainable applications. You can bring applications from UNIX and other platforms to Mac OS X quickly by using Cocoa to build state-of-the-art Aqua user interfaces while retaining most existing core code.
Cocoa is one of the application environments of Mac OS X and a peer to Carbon and Java. It consists of a suite of object-oriented software libraries and a runtime engine, and shares an integrated development environment with the other application environments. You can write Cocoa applications in either Objective-C or Objective-C++ (there are Java bindings as well) but you can also call Carbon C functions.
Cocoa provides a basic application framework for event-driven behavior and for application, window, and workspace management. In most cases, you won't have to handle events directly or send any drawing commands to a rendering library. In addition, Cocoa offers a rich collection of ready-made objects to add to the interface of your application. Most of these objects are available in Interface Builder, Apple's user design tool. You can simply drag an object from an Interface Builder palette onto your interface's surface, configure its attributes, and connect it to other objects. And of course, you can always instantiate, configure, and connect these objects programmatically. To support user interfaces, Cocoa includes various technologies, including those that promote accessibility, perform validation, and facilitate the connections between objects in the user interface and custom objects.
Both Apple and third-party vendors are continually releasing Cocoa frameworks to support the most advanced features. The core Cocoa frameworks are Foundation and Application Kit, which contain the classes needed by applications and other tools. The Foundation framework defines a base layer of classes that can be used for any type of Cocoa program, but are used primarily for creating applications that don't need a user interface, such as command-line tools and Internet servers.
The Application Kit framework contains all the objects you need to implement your graphical, event-driven user interface, including windows, dialogs, buttons, menus, scrollers, and text fields. The Application Kit simplifies your work as it efficiently draws on the screen, communicates with hardware devices and screen buffers, and clears areas of the screen before drawing.
When coupled with Interface Builder, Cocoa helps you create fully functional, object-oriented applications on Mac OS X in a fraction of the time you would need using procedural languages. The Foundation and Application Kit frameworks and Cocoa's infrastructure takes care of the details for you, so you can concentrate on features.
If you are ready to begin learning about the APIs and tools available on Mac OS X for Cocoa, go to Getting Started With Cocoa, for a guided introduction and learning path.
Getting Started with Cocoa:
http://developer.apple.com/referencelibrary/GettingStarted/GS_Cocoa...
Porting Multithread Applications from Win32 to OS X
http://developer.apple.com/macosx/multithreadedprogramming.html