Objective-C is a powerful object-oriented language which adds a dynamic message-passing architecture (based on Smalltalk) to C. Objective-C is a proper superset of C and it is compact and easy to learn, especially when compared with C++. Objective-C is the basis for Cocoa, the primary development environment for the Macintosh, and Cocoa Touch, the development environment for the iPhone/iPod Touch. Programming Objective-C 2.0 provides manageable introduction to Objective-C. When learning a new language it's sometimes hard to know what's important and what's a minor detail or a rare case. We'll go through the basics of the language and object-oriented programming without burying you with an encyclopedia. If something is technically possible but a bad idea in practice, we'll tell you. We also try and explain a bit about what is going on "under the hood" so you'll be better equipped to make design decisions.