Search

Table of Contents
Cocoa® Programming for Mac® OS X
BOOK:
Cocoa® Programming for Mac® OS X
Browse by Category
 
 
Hide Left Column
Cocoa® Programming for Mac® OS X
Cocoa® Programming for Mac® OS X
by Aaron Hillegass

Publisher: Addison-Wesley Professional
Pub Date: December 03, 2001
More recent edition of this book available.
Print ISBN-10: 0-201-72683-1
Print ISBN-13: 978-0-201-72683-1
Pages: 416
Slots: 1.0
Start Reading
Buy Print Version
Overview

The practical guide everyone says you need!

"The most comprehensive guide to developing Cocoa available. For the developer new to Cocoa, it provides an excellent introduction that will lead to success with the world's best object-oriented development tools. For those familiar with Cocoa, the excellent organization and presentation make the book invaluable as a reference tool."

--Bill Bumgarner, Cofounder, CodeFab

With the arrival of Mac OS X, Apple now has a modern operating system that calls for advanced programming capability. To take full advantage of the exciting and innovative features of OS X, Apple recommends a development framework known as Cocoa. Cocoa is a powerful collection of object-oriented tools and libraries that makes developing applications a much faster process. Mastery of Cocoa is absolutely essential for anyone doing serious development work for the Macintosh.

"Mac OS X and Cocoa are going to revolutionize the world of software development in the coming years... Aaron Hillegass's book is without a doubt the best aid to learning this technology."

--Erik J. Barzeski, Editor, CocoaDevCentral.com

New technologies often have a steep learning curve and do not always come with complete instructions on how to get started or how to overcome common obstacles. Enter Cocoa(R) Programming for Mac(R) OS X, which shows you precisely how to put Cocoa to work.

"Reading this book is the absolute best way to learn how to harness the power of this amazing technology."

--Andrew Stone, President, Stone Design, www.stone.com

Guiding programmers through the key features of Cocoa, this book emphasizes design patterns that enable you to predict the behavior of classes you have never used before. Using a tutorial format, it takes you, step-by-step, through five applications and an InterfaceBuilder palette. Each project introduces several new ideas, and as each concept or technique is discussed, the author, drawing on his own extensive experience, shows you the advantages of working with Cocoa in object-oriented software development environments.



0201726831B11262001

 
Editorial Reviews
Product Description
The most comprehensive guide to developing Cocoa available. For the developer new to Cocoa, it provides an excellent introduction that will lead to success with the world's best object-oriented development tools. Softcover.
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).

 
Reader Reviews From Amazon (Ranked by 'Helpfulness')
Average Customer Rating:based on 98 reviews.
Fantastic book!, 2009-06-14
Reviewer rating:
I haven't finished it yet but I'm loving this book. It's extremely easy to read and follow along without getting lost. The author writes in somewhat of a conversational style, as opposed to a highly technical and analytical fashion. In the interest of concentrating on 1 idea/topic at a time he often will say something like "this idea is known as ________, but it's not important right now and we'll read about it in Chapter __". I think this is a good thing; trying to learn a concept and then branching off onto smaller tangents would make it hard to learn the language.

This was my first time learning a computer language from a book. For this book, I'd recommend having a basic understanding of object oriented languages. I've had minor experience with Java, and pretty extensive experience with C/C++ and that was plenty of preparation for me. A lot of concepts with Objective-C (used in Cocoa) are extremely similar to those seen in C/C++, but with different syntax and keywords. Because of this, Aaron will often teach concepts in Objective-C and relate the functionality to Java or C/C++ concepts in order to solidify his explanation. For me that helps a lot because some concepts are hard to grasp for the first time.

I'm extremely satisfied with this book. I did research before I bought it and I think it paid off. Fun fact-- I've got a friend that works at Apple and he was attending WWDC '09, and he saw Aaron Hillegass cruising around the convention in his cowboy hat. I thought that was be pretty neat seeing as Aaron is a bit of a celebrity in the Mac community :)
Begin Cocoa way with this book, 2009-06-03
Reviewer rating:
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. Now am experienced Mac OS X Developer, but anyway I bought this book and read it, again it's excellent written, a lot of examples, different aspects of Cocoa Framework. This book is an excellent starter to mid-level for Cocoa developers.

The third edition added some new technologies introduced in Mac OS X 10.5 like CoreAnimation and garbage collector, anyway I expected to see in this edition more info about Core Data (which is used more and more even in simple apps) and deeply explaining the more complicated things like NSArrayController and NSTreeArrayController with more examples and techniques.

Also it would be great to see in the next editions a chapter about Network Programming with Cocoa, CoreAudio services and another on Threading Programming in Cocoa.

For those interested in Cocoa programming, I would recommend also the "Cocoa Programming" book by Scott Anguish, Erik Buck and Donald Yacktman (Hope they will release a new edition rewritten with all new technologies and new techniques Objective-C 2.0 introduced)
REVIEW ON COCOA® PROGRAMMING..., 2009-05-10
Reviewer rating:
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.
I hope that my tiny review could help you guys.
No thanks., 2009-05-05
Reviewer rating:
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 Platform. But be aware it is not n00b friendly AT ALL. No explanations are offered for examples...
Excellent Tutorial, "Challenge Problems" not always challenging, 2009-05-01
Reviewer rating:
I bought this book to learn Cocoa and Objective-C (I'm an experienced C++ programmer), and it was extremely helpful. Working through all of the projects in the book was an excellent start and helped me understand the structure of Cocoa and the basic design paradigms of an Objective-C program. My main objection to the book relates to the "Challenge" sections at the end of many of the chapters: the difficulty of these challenges varies widely, and there are too few of them. I would prefer a more structured set of challenges (easy, medium, hard, etc.) so that you know what you're getting yourself into before you start. Some of the challenges take only a few seconds, while others can take over a half hour. The book's example codes were also sometimes confusing, having you type in references to objects that you haven't yet created and that haven't been mentioned in the text (I sometimes thought perhaps I had skipped a page, etc.).

Pros:
* Well-structured to lead you through the course
* Very well suited for self-study
* Excellent projects for teaching basic concepts

Cons:
* "Challenge" problems vary too much in difficulty, too few of them
* Odd order of inputting some of the project code
 
Some information above was provided using data from Amazon.com. View at Amazon >
Cocoa® Programming for Mac® OS X
Cocoa® Programming for Mac® OS X
by Aaron Hillegass

Publisher: Addison-Wesley Professional
Pub Date: December 03, 2001
More recent edition of this book available.
Print ISBN-10: 0-201-72683-1
Print ISBN-13: 978-0-201-72683-1
Pages: 416
Slots: 1.0
Start Reading
Buy Print Version
Company | Terms of Service | Privacy Policy | Contact Us | Help | 508 Compliance | Subscribe Now
© 2009 Safari Books Online. All rights reserved.