or
Sign in to turn on 1-Click ordering.
 
 
Express Checkout with PayPhrase
What's this? | Create PayPhrase
More Buying Choices
61 used & new from $24.00

Have one to sell? Sell yours here
 
   
Cocoa(R) Programming for Mac(R) OS X (3rd Edition)
 
 

Cocoa(R) Programming for Mac(R) OS X (3rd Edition) (Paperback)

~ (Author)
4.4 out of 5 stars  See all reviews (102 customer reviews)

List Price: $49.99
Price: $31.49 & this item ships for FREE with Super Saver Shipping. Details
You Save: $18.50 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Tuesday, November 17? Choose One-Day Shipping at checkout. Details
48 new from $25.58 13 used from $24.00

Formats

Amazon Price New from Used from
  Kindle Edition, May 18, 2008 $25.19 -- --
  Paperback, May 14, 2008 $31.49 $25.58 $24.00

Frequently Bought Together

Cocoa(R) Programming for Mac(R) OS X (3rd Edition) + Programming in Objective-C 2.0 (2nd Edition) + Beginning iPhone 3 Development: Exploring the iPhone SDK
Price For All Three: $87.57

Show availability and shipping details

  • This item: Cocoa(R) Programming for Mac(R) OS X (3rd Edition) by Aaron Hillegass

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Programming in Objective-C 2.0 (2nd Edition) by Stephen G. Kochan

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Beginning iPhone 3 Development: Exploring the iPhone SDK by Dave Mark

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought

Xcode 3 Unleashed

Xcode 3 Unleashed

by Fritz Anderson
3.2 out of 5 stars (16)  $34.64
Beginning iPhone 3 Development: Exploring the iPhone SDK

Beginning iPhone 3 Development: Exploring the iPhone SDK

by Dave Mark
4.6 out of 5 stars (165)  $26.39
Programming in Objective-C

Programming in Objective-C

by Stephen G. Kochan
The iPhone Developer's Cookbook: Building Applications with the iPhone SDK

The iPhone Developer's Cookbook: Building Applications with the iPhone SDK

by Erica Sadun
3.1 out of 5 stars (40)  $26.39
Core Animation for Mac OS X and the iPhone: Creating Compelling Dynamic User Interfaces (Pragmatic Programmers)

Core Animation for Mac OS X and the iPhone: Creating Compelling Dynamic User Interfaces (Pragmatic Programmers)

by Bill Dudney
3.7 out of 5 stars (18)  $23.07
Explore similar items

Editorial Reviews

Amazon.com Review

Suitable for anyone with a little C/C++ programming experience who wants to create software for the newest Mac platform, Cocoa Programming for Max OS X provides a slickly packaged and approachable tutorial that will get you started creating state-of-the-art Mac programs.

The smart presentation style and easy-to-understood code examples help make this text an excellent resource. (It also helps that Aaron Hillegass is a truly engaging writer.) He first explains how the legacy NeXTSTEP platform has evolved into Cocoa on the Mac OS X. Beginning with short examples illustrating the actual Cocoa tools in action, the author gets you started with simple programs for a random-number generator, a raise calculator, and other comprehensible examples. Rather than just listing APIs and classes, the emphasis is on hands-on Cocoa development. An early standout section provides a nice tour of essential Objective-C features you'll need to know to use Cocoa effectively.

This book covers the several dozen built-in Cocoa controls, from basic text and buttons to more advanced widgets (including lists and tables). Subsequent sections look at user interface design (using the Interface Builder to create nib files) and how to add programmatic processing behind the visual layout. Along the way, the author introduces coverage of essential Cocoa APIs for strings, arrays, and dictionaries. Later chapters look at saving and loading documents (and user defaults) and how to tap the powerful graphics abilities available in Cocoa. (Besides image and basic drawing, there are short sections on PDF support and printing.)

More advanced user interface features get their due by the end of the book, including cutting and pasting data through the Cocoa pasteboard and also adding drag-and-drop support. Final sections look at creating new controls for use with the Interface Builder palette, and, briefly, how to use Java with Cocoa (an option that the author doesn't necessarily recommend). Throughout this text, the author provides more advanced, challenging problems at the end of each chapter for the "more curious" reader. This approach keeps beginners from getting lost in the details of Cocoa development, but gives the more advanced reader something more to do.

While there are comparably fewer books on Mac OS X compared to other platforms, readers are lucky to have this one available. Anyone who wants to get onboard with Cocoa development will be well served by this title. It's a fine tutorial that earns high marks for its approachable, clear examples and an excellent presentation by an author who knows his stuff and, better yet, knows how to teach it to others. --Richard Dragan

Topics covered: Brief history of the Mac platform (from NeXTSTEP to Mac OS X), basic Cocoa development in Objective-C, using Project Builder and Interface Builder tools, tutorial to Objective-C (instances, variables, using classes, arrays and other containers, custom classes), the Objective-C debugger, basic Cocoa controls (building user interfaces), tables and data sources, event handling and delegates, archiving documents (encoding and decoding, saving and loading documents), Nib files, window panels, saving and retrieving user defaults (including using dictionary classes), notifications (observers and more on delegates), alert panels, localization (including string tables, a English and French example, the nibtool utility), custom views and drawing, drawing images and mouse events (plus coordinates systems and autoscrolling views), responders and keyboard events, fonts and strings (including attributed strings and PDF support), pasteboards and nil-targeted actions, using Objective-C categories (a code reuse feature), drag-and-drop support, timers, sheets and drawers, formatting strings, printing support, on-the-fly menu updating, text editing with text views, basic tutorial for using Java with Cocoa, and custom Interface Builder palettes (and inspectors). --This text refers to an alternate Paperback edition.



Product Description

The best-selling introduction to Cocoa, once again updated to cover the latest Mac programming technologies, and still enthusiastically recommended by experienced Mac OS X developers.

 

“Aaron’s book is the gold standard for Mac OS X programming books—beautifully written, and thoughtfully sculpted. The best book on Leopard development.”

—Scott Stevenson, www.theocacao.com

 

“This is the first book I’d recommend for anyone wanting to learn Cocoa from scratch. Aaron’s one of the few (perhaps only) full-time professional Cocoa instructors, and his teaching experience shows in the book.”

—Tim Burks, software developer and creator of the Nu programming language, www.programming.nu

 

“If you’re a UNIX or Windows developer who picked up a Mac OS X machine recently in hopes of developing new apps or porting your apps to Mac users, this book should be strongly considered as one of your essential reference and training tomes.”

—Kevin H. Spencer, Apple Certified Technical Coordinator

 

If you’re developing applications for Mac OS X, Cocoa® Programming for Mac® OS X, Third Edition, is the book you’ve been waiting to get your hands on. If you’re new to the Mac environment, it’s probably the book you’ve been told to read first. Covering the bulk of what you need to know to develop full-featured applications for OS X, written in an engaging tutorial style, and thoroughly class-tested to assure clarity and accuracy, it is an invaluable resource for any Mac programmer.

 

Specifically, Aaron Hillegass introduces the three most commonly used Mac developer tools: Xcode, Interface Builder, and Instruments. He also covers the Objective-C language and the major design patterns of Cocoa. Aaron illustrates his explanations with exemplary code, written in the idioms of the Cocoa community, to show you how Mac programs should be written. After reading this book, you will know enough to understand and utilize Apple’s online documentation for your own unique needs. And you will know enough to write your own stylish code.

 

Updated for Mac OS X 10.4 and 10.5, this revised edition includes coverage of Xcode 3, Objective-C 2, Core Data, the garbage collector, and CoreAnimation.


Product Details


More About the Author

Aaron Hillegass
Discover books, learn about writers, read author blogs, and more.

Visit Amazon's Aaron Hillegass Page

Look Inside This Book

What Do Customers Ultimately Buy After Viewing This Item?

Cocoa(R) Programming for Mac(R) OS X (3rd Edition)
67% buy the item featured on this page:
Cocoa(R) Programming for Mac(R) OS X (3rd Edition) 4.4 out of 5 stars (102)
$31.49
Programming in Objective-C 2.0 (2nd Edition)
14% buy
Programming in Objective-C 2.0 (2nd Edition) 4.5 out of 5 stars (73)
$29.69
Beginning iPhone 3 Development: Exploring the iPhone SDK
12% buy
Beginning iPhone 3 Development: Exploring the iPhone SDK 4.6 out of 5 stars (165)
$26.39
Cocoa Design Patterns
4% buy
Cocoa Design Patterns 4.7 out of 5 stars (6)
$31.49

Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(46)
(10)
(7)

Your tags: Add your first tag
 

 

Customer Reviews

102 Reviews
5 star:
 (70)
4 star:
 (19)
3 star:
 (3)
2 star:
 (6)
1 star:
 (4)
 
 
 
 
 
Average Customer Review
4.4 out of 5 stars (102 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
139 of 143 people found the following review helpful:
5.0 out of 5 stars Not Perfect, But Highly Recommended, February 23, 2002
By HiRez (California, USA) - See all my reviews
This was the book I had been waiting for, or at least ONE OF the books I had been waiting for, to really get started with Cocoa programming. The O'Reilly book, as has been mentioned plenty of times here, leaves a lot to be desired, and while it was better than nothing, a wall still remained between me and Cocoa after finishing it.

After reading Cocoa Programming for OS X, I feel I can say I "get" Cocoa finally. That's not to say I'm an expert, but that I can complete a simple program now, on my own, using the Cocoa frameworks and concepts. As Aaron says in the book, learing the Cocoa APIs will take much longer. I come from a Java background, with only marginal C and C++ experience. Although Aaron does not speak much about the objective-c language itself, that's ok. Apple's PDF is more than adequate to get that background.

There are some things that get glossed over that I wish had been more fully explained, and some things left out altogether that I would have liked to see, such as:

-- Spawning and managing multiple threads, thread safety issues

-- exception handling, debugging and assertions

-- Cocoa "primitive" objects (NSPoint, NSRect, NSRange, etc.), why they apparently don't need to be retained or released, and why they are "NS" objects but don't really behave like them.

-- Calling Toolbox routines or those from APIs that have not yet been "Cocoa-ized" (and integrating the Old Way into the Cocoa Way), with examples. Cocoa is nice but once you get away from building a text editor, you will need to dig into this ugly and unfriendly world at some point (unfortunately). For instance, how do I access the Airport card, how do I open and use a network socket, how can I read a DV-encoded stream from a FireWirePort and save it to disk as a QuickTime movie, how do I access a database, how do I use an OpenGL view?

-- How to customize Cocoa UI elements. Like if I wanted an NSSlider with TWO sliders, a minimum and a maximum. There is an example of subclassing an NSView in the book, but that's just a drawing panel.

To be fair, I'm not really criticizing Aaron for these things. The book has plenty of useful stuff, and I'm sure Aaron wants to write and sell more books, so some advanced Cocoa books that address some of these things as well as others will be welcome...I hope someone is writing them right now. I also hope someone is writing a comprehensive Cocoa API reference, as Apple's is somewhat lacking (Have you seen the phrase "Description Forthcoming" more times than you care to remember? I thought so.)

The bottom line is that this is a great book that is a must-have for anyone interested in Cocoa programming. I'd probably rate it four or four-and-a-half stars, but I'm giving it five for being there when I needed it, and being the first really useful book on the subject. The best thing I can say about it is that I can now do things there is simply no way I could have before.

Comment Comment (1) | Permalink | Was this review helpful to you? Yes No (Report this)



 
90 of 91 people found the following review helpful:
4.0 out of 5 stars Great intro, a few nits, February 4, 2002
By Dan Crevier (Bellevue, WA United States) - See all my reviews
(REAL NAME)   
First my background. I'm a very experienced C++ programmer who is also very experienced with Carbon.

I found this book to be a great intro to Cocoa without a lot of preaching about how Cocoa will change the world. Carbon vs. Cocoa seems to be an almost religous debate, and I'm glad this book didn't try to overpromise the benefits of Cocoa.

The book is well organized, very readable, and has good examples. It is *much* better than the O'Reilly "Learning Cocoa" book.

After reading this book, you'll be able to start writing applications in Cocoa, and you'll know where to go for more info.

Now, my nits:

* The book explicitly stated that it was for people with a C++ or java background, but I think there should have been more direct comparisions between C++/java and Objective C. For example, saying that class functions (the ones with +) are just like static functions in C++ would have helped.

* This may be an introductory book for people moving from other platforms to the Mac, but the UI for most of the applications violated Apple's UI guidelines in many ways. I think the book should have promoted following Apple's UI guidelines.

* There was no discussion of exceptions, and much of the code was not exception-safe and didn't do much error checking. There wasn't even the usual disclaimer about leaving that out for simplicity.

* I would have liked a quick overview at the end of some of the classes not discussed in the book with a couple of sentences about what they do. This would help to learn what's out there.

I hope to see more books on Cocoa by the author. There's still lots of room for books on more advanced Cocoa topics.

Comment Comments (2) | Permalink | Was this review helpful to you? Yes No (Report this)



 
45 of 47 people found the following review helpful:
5.0 out of 5 stars Getting started in Cocoa, September 16, 2002
By "c-h-a-r-l-e-s" (Palo Alto, CA, USA) - See all my reviews
First, I have to say I loved this book, I actually read half of it on a trip, not being in front of my computer, and still enjoyed the clear style and the gradual addition of new concepts and tools, chapter after chapter. Then I could hardly wait to be back home and start doing it for real.

Now for the potential buyer.

WHAT IT IS NOT: a reference book (no list of classes etc...) or a technical book for advanced programming; a book about Java or Carbon; an introduction to object-oriented programming; an introduction to C.

WHAT IT IS: an excellent introduction to programming in Objective C in the Cocoa environment of Max OS X, provided you know enough about
object-oriented programming (some basic understanding of C++ is preferable too).

WHAT YOU LEARN: Objective-C in Cocoa; using Apple Developer Tools; building an application in Mac OS X; how to make optimal use of Cocoa classes and API, knowing how they were conceived and meant to be used; a number of basic concepts and tips that really get you started.

THE PLUS that make this book so interesting: very good and clear writing; some amusing brief 'historical' insights; you really feel the author knows what he is talking about; the author gives personal views (clearly stated as advices, not rules); follow-up, errata, examples, comments, and more on his web site; still completely useable with OS X.2 (a couple or very minor changes that are listed on the web site anyway), so that's the good time to buy it (price is down, but content is still up to date).

Final comment: Objective C in Max OS X is very powerful and enjoyable.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

5.0 out of 5 stars Fantastic intro to Cocoa and Objective-C
This is the book I started with to get into iPhone development. Even though this book is specific to Mac OS X desktop software development, it's by far the best book to get a... Read more
Published 10 days ago by Svend

5.0 out of 5 stars Phenomenal Book
This book is remarkable. I love how the author conveys how a Cocoa programmer would talk about or think about a code sample. Read more
Published 2 months ago by Scott

4.0 out of 5 stars Great beginner/intermediate learner book
Really excellent book and has been recommended by numerous friends. I'm a 10+ year windows programmer, but decided to buy one of these fruit products and learn how to write and... Read more
Published 2 months ago by Matthew Fife

3.0 out of 5 stars Misleading Title
Like many people, I bought this book as it has garnered much critical acclaim. Here is a quote from the back cover. Read more
Published 4 months ago by drM

5.0 out of 5 stars Fantastic book!
I haven't finished it yet but I'm loving this book. It's extremely easy to read and follow along without getting lost. Read more
Published 5 months ago by C. Crowe

4.0 out of 5 stars Begin Cocoa way with this book
My backgrounds of Mac OS X programming was from the 2nd edition of this book. I want to thank Aaron Hillegass for his work done so wonderful. Read more
Published 5 months ago by Vitalie Mudrenco

3.0 out of 5 stars REVIEW ON COCOA® PROGRAMMING...
I bought this book coz I would like to learn up on cocoa. Searching on the web I read that this is the most referenced book by programmers on MAC® OS X. Read more
Published 6 months ago by Miguel Alberto Pelaez Fdez

1.0 out of 5 stars No thanks.
Not a good introduction book. AT ALL. This book assumes you know Objective-C... People were saying this is a good introduction book for beginning developers for the Mac... Read more
Published 6 months ago by David W. Patrick

4.0 out of 5 stars Excellent Tutorial, "Challenge Problems" not always challenging
I bought this book to learn Cocoa and Objective-C (I'm an experienced C++ programmer), and it was extremely helpful. Read more
Published 6 months ago by Christopher Hennes

5.0 out of 5 stars A great starting point for learning Mac programming
I've been hesitating to learn Cocoa for a few years, but I took the plunge the other week and bought this book. I'm very pleased that I did. Read more
Published 6 months ago by Sebastian M.

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
Changes from previous version? 2 2 months ago
Why is this linked from the 3rd edition paperback? 2 June 2008
Kindle Edition? 2 May 2008
See all 3 discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
   




Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.