- Paperback: 480 pages
- Publisher: Addison-Wesley Professional; 2 edition (May 10, 2004)
- Language: English
- ISBN-10: 0321213149
- ISBN-13: 978-0321213143
- Product Dimensions: 7 x 1.1 x 9.5 inches
- Shipping Weight: 2 pounds
- Average Customer Review: 198 customer reviews
- Amazon Best Sellers Rank: #2,420,531 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Cocoa(R) Programming for Mac(R) OS X (2nd Edition) 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and Amazon Prime.
If you're a seller, Fulfillment by Amazon can help you increase your sales. We invite you to learn more about Fulfillment by Amazon .
There is a newer edition of this item:
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Customers who viewed this item also viewed
There's a reason that a large slice of the open-source movement has defected from running Linux on its laptops to running Mac OS X. The reason is the Unix core that underlies Mac OS X, and the development tools that run on that core. Cocoa makes it easy to create very slick Mac OS X interfaces for software (as well as to create applications in a hurry), and this new edition of Cocoa Programming for Mac OS X does an excellent job of teaching its readers how to put a Cocoa face on top of code (Objective-C code almost exclusively). If you know something about C and/or C++ programming and want to apply your skills to the Mac, this is precisely the book you want.
Author Aaron Hillegass teaches a Cocoa class, and his book reads like a demonstration-driven lecture in a computer lab. That is, the book takes a heavily example-centric approach to its subject, beginning with simple announcement windows and proceeding to cover the more advanced controls and object-oriented features of Cocoa and Objective-C. Throughout, he hops back and forth between descriptions of the goal to be accomplished, listings of the code that does the job, and instructions on how to use the Mac OS X development tools to speed the development process. --David Wall
Topics covered: How to write software for Mac OS X in Objective-C and, especially, with Cocoa. The new edition shows how to use NSUndoManager, add AppleScript capability to an application, do graphics work with OpenGL, and use Cocoa under Linux using GNUstep. As well, all the basic controls and design patterns are covered.
From the Back Cover
The highly acclaimed introduction to Cocoa—recommended most by experienced Mac OS X developers now updated and expanded.
Here's what critics said about the first edition:
"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
"Make sure this is the first one you pick up. It's the best book for a beginning Cocoa programmer."
—From the review on HyperJeff.net&
"I love this book. The descriptions are clear, the examples logical. Everything a programmer needs to get up to speed on Cocoa."
—Dave Mark, Editor, MacTech Magazine
To help programmers develop applications for Mac OS X, Apple is now giving away XCode, Interface Builder, and the Cocoa frameworks—the tools used to create Safari, GarageBand, Mail, and the iApps. Cocoa® Programming for Mac® OS X, Second Edition, will give you a complete understanding of how to use these tremendously powerful tools and frameworks to write full-featured applications for the Mac.
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. Written in a tutorial format, it takes you step-by-step through the creation of six applications and an Interface Builder 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 right way to use it.
Updated for Xcode and Mac OS X 10.3, new chapters in this second edition include coverage of OpenGL, AppleScriptability, the undo manager, creating frameworks, and a brief introduction to using GNUstep on Linux.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
However, IF YOU ARE THINKING ABOUT KINDLE VERSION. DONT DO IT.
The Kindle version of this book is virtually unusable. The images are simple awful (too small to be seen).
Also, the code listings are done in a proportional font (same as the text) that makes reading the code very hard. The code listings are also not separated from the rest of the book at all.
These two problems really take away from the utility of this book. Really expected more from the Big Nerd Guys.
As others have mentioned, its pretty easy to grok and recover from the typos and skipped instructions if you're already experienced in Obj-C and Cocoa programming, but I'm not so sure that would be true for anyone that's trying to use this as a starter book...which is what it's supposed to be. This used to be the "go-to" book for the first-time OSX programmer; I wouldn't recommend this until it undergoes a serious rewrite.
For anyone struggling with the deprecated OpenGL glut methods in Chapter 35...set your Deployment Target to 10.8.
Alas, this book didn't live up to my expectations. It covers all the right topics, but the programming examples are not particularly useful and it's not clear how one could extend them to other situations. Some concepts though covered are left under explained (like MVC and delegates). Key methods are thrown out list-like in places, with no obvious pointers to how or where they are to be implemented. In other cases, fancy tricks are pulled off by getting the reader to basically copy loads of code, but why or how those methods are being implemented is not really clear. If the author's weren't leading you by the hand, you'd have no idea how they came up with those solutions, and that really encapsulates the problems with the book as a whole: it demonstrates, but doesn't empower.
I do have to say that if you are a complete newcomer, then this book skips over some basics that would make it a lot more helpful. I only have a slight programming background and only do it as a off and on hobby. I have some experience with web-based languages and some VB, but that didn't really help me understand this book.
I can follow the examples, but trying to figure out how they work in the real world has been a challenge as this just shows you how to use Xcode mostly. It is also missing information on the newer technologies which actually eliminate the need to go over a couple of the sections.
Additionally, most of the information I found in this book is also available online in random places but if you don't want to have to piece things together, this book brings a nice flow to the information.
At the same time, while by no means a complete reference manual (those are on-line anyway, bundled with the developer tools), the book is very usable for the more-experienced developer. I've been programming professionally in C/C++/Java for 15 years or so, and found myself leaping ahead to advanced chapters (for example, to add a "sheet" to my growing app). This worked very well, and it's unusual for one book to work both for novice and expert, both sequentially and by random access.
The style is personal and personable. Possibly just a shade too much so: the principal flaw of the book is that Mr. Hillegass is still a bit caught up in some "object oriented" turf wars of a decade or so ago. If you want to learn to do object-oriented programming, or even what it is, this is quite the wrong place to go. And the worst of that problem is that the presentation seems to claim to be "OO" without either mentioning or demonstrating the modularity and suitability of design that are the actual roots of "OO".
Each chapter ends with "For the Curious" which goes into more depth to show you how something is working under the hood.
I recommend this book to any beginning Cocoa programmer and also recommend it as a good reference to freshen up knowledge in a functional area.