30 of 31 people found the following review helpful
on April 4, 2004
This book has potential, but in general I am pretty dissatisfied.
(1) It is pretty well thought-out.
(2) The progression through 4 projects is good.
(3) There is working code for the examples available online.
(1) The book is riddled with errors. If you include the unofficial errata from OReilly's Website, the book becomes about 200% more usable.
(2) Why has this book not been reprinted? At LEAST OReilly should have released an official errata for this book at this point!!!
(3) This book does NOT cover 10.3 and the XCode software (still uses project builder). In most cases this is ok and you can figure much of it out. However, there are times that the differences are too significant to overcome without a lot of effort.
I have been very happy with O'Reilly books in the past, but this one is substandard.
I would recommend trying a different book unless this one is overhauled.
18 of 18 people found the following review helpful
on May 25, 2002
If you're serious about programming on Mac OS X and have at least some experience under your belt already, then you really owe it to yourself to get two books:
(*)"Building Cocoa Applications: A Step by Step Guide."
(*)"Cocoa Programming for Mac OS X"
I started tinkering with Mac OS X a few years ago by reading a hodge-podge of incomplete Apple docs, sites like Stepwise, and archives of Omni-Group lists. These sources are great for reference, but it can be difficult to get answers you need unless you already have enough experience to know what questions to ask. Tough luck, newbie. O'Reilly's "Learning Cocoa" felt like an extension of Apple's docs - minimal on concepts and not entirely clear on some of the objectives of the examples. It's difficult to get an bigger-picture view of some of the capabilities offered by Cocoa and how you _could_ be doing development without a good explanation of concepts, clearly written example exercises that follow a sequence of topics, and additional information on how to make the best use of the Apple-provided developer tools.
The authors of both books take great pains to explain concepts to you in basic terms and then reinforce them with very well designed examples that really make you think. They then approach component problems from varying angles in order to help you understand the different options you have for tackling them. The chapter summaries and additional follow-up exercises were a very nice touch. Best of all is the idea that these books are not teaching you how to use particular classes in a restricted situation - they're teaching you how to understand _solutions_ in terms of Cocoa and then equip you with the skills required to plan your entire development approach and execute your project. The pointers on where to find additional documentation and some very, very cool tricks on how to use the development environment really made these books worthwhile.
I now feel more comfortable with Cocoa and more confident in my abilities to program on Mac OS X. Thanks, guys. :)
18 of 19 people found the following review helpful
I've been meaning to learn Objective C, Interface Builder and Project Builder for years. From back in the days of Rhapsody, and before when I'd bought books on NextStep programming. Always intended to do so, that is, until I received this book at Apple's World Wide Developer's Conference. And now after typing my way through the book's source code, I'm comfortable with Objective C's oddball syntax, understand how to wire up an application in Interface Builder and have confidence I'll soon be making quality Cocoa applications of my own. I've already started writing a freedb client.
Obviously, it would be nice for me if the book explored network programming or the IOKit, but it concentrated on the fundamentals which nearly all applications share: windows, menus, drawing, printing, preferences, clipboards, documents, icons, etc. I can figure it out from here.
So get off the fence, it's time to learn Cocoa.
11 of 11 people found the following review helpful
on September 24, 2003
Format: PaperbackVerified Purchase
I tried using Aaron Hillegass' book, Cocoa Programming for Mac OS X, but this book was much easier to follow for me. I don't mean to rag on Hillegass' book - it's still well written - just a not quite as easy for me. This book takes the time to *explain* the concepts before diving into a program. However, if you're looking for a reference book, this isn't it. This book will teach you how to use Cocoa by taking you through the construction of three fairly fancy applications - a calculator, and two word processing oriented programs.
8 of 8 people found the following review helpful
on December 23, 2002
I adore this book: it does exactly what I wanted it to do, and it does so compellingly - I've worked straight through the whole thing. The example programs are a great step by step introduction to integrating necessary UI functionality into a program. The exercises are challenging, requiring thought, a willingness to rummage through class definitions, and experimentation.
But make sure that what I wanted it to do is what you want it to do. I have a fair amount of experience as a programmer in a lot of different languages, but no experience coding in a desktop windowing environment. This book has rapidly brought me to a place where I feel confident that I will be able to build my own Cocoa applications, and have a real understanding of the underlying architecture.
Don't buy this book if you aren't already very comfortable with at least one programming language. If that language isn't ANSI C, plan on working a little harder to grok some of the more abstruse C-ness. Don't expect a course on obect-oriented progamming. Don't expect lessons in how to use a debugger. Don't expect spoon feeding - as it claims on the back cover, it's a book for serious developers.
I'm glad I wasn't put off by the reviews complaining of errors. I haven't found anything harsher than a minor distraction. What I have found is that I would sometimes reach the point in the discussion of a new concept where I had to stop and ask, "But why did they do it *that* way?" After putting effort into arriving at my own conclusion, I would invariably find that in the next paragraph my question was answered.
Definitely not "for Dummies," but definitely worth the effort.
8 of 8 people found the following review helpful
on May 21, 2002
I'm about half-way working through this book and I'm liking it alot. It's much better than Learning Cocoa. In the first half of the book, the programming examples are building on the same project, which is nice because one can slowly develop a more complex program. In addition, the book provides some additional insight into Cocoa's way of doing things and some intricacies of Objective-C. The second major project in the book involves using lex and yacc as an expression evaluator -- this is not to say that this book requires knowledge or teaches those tools, but that the authors are stepping through a reasonably complex project and using various tools to help solve it.
5 of 5 people found the following review helpful
on July 12, 2003
Finding the online Cocoa documentation (that comes with the Dev Tools) to be seriously lacking, I went to the bookstore and quickly found this book. Just judging from the table of contents, it's clear the book covers a wide variety of topics, more than enough to get any programmer off the ground with Cocoa. The book employs a tried-and-true programming book style, introducing each topic with a general discussion, and then following by giving you code to type into your program. There are four parts to the book, with the first part being an overview of various things, and each subsequent part containing several chapters in which you study Cocoa features pertinent to a specific project, which you build throughout each chapter.
I have only one beef with this book: it may not be enough for very novice programmers. I have previously programmed the Mac Toolbox and I have a lot of C and C++ experience, so I usually knew what was going on. But someone with less experience may have trouble because frequently the book will just tell you to enter a bunch of code, and not really give an adequate explanation of what's happening.
Of course, even experienced programmers may find this book a little too "hold my hand and follow me" to actually get started with Cocoa programming. But the book does do a very good job of getting you familiar with the classes and methods you'll be needing to use when you do get off the ground. I highly recommend buying this book, as my experience with it has been very positive. If you do not get the confidence you need to build your own Cocoa apps just from this book, though, then I (as well as the authors of this book) recommend "Cocoa Programming for Mac OS X" by Aaron Hillegass as a supplement. Together the two will give you an even more comprehensive knowledge of Cocoa, as well as two sources to consult if you get confused (two is always better than one).
(In addition, before reading any Cocoa book, I recommend reading "The Objective-C Programming Language", which can be found in the Developer Tools documentation under Cocoa. Most Cocoa books do provide a brief Objective-C tutorial, but it will be to your advantage if you already know the language, as these tutorials are not terribly adequate.)
7 of 8 people found the following review helpful
on May 16, 2002
This is a great book, and I recommend it to anyone who wants to develop applications for Mac OS X. It covers a wide range of Cocoa programming topics, from the basics of the various Cocoa developer tools through more-complex topics like multiprocessing, multithreading, and system-wide services.
I really like the authors' approach to presenting the example programs. Although small example programs are used for some topics, they present most of the programming topics through 3 larger applications. Each application (Calculator, MathPaper, GraphPaper) is built up over several chapters, which helps the reader tie the topics together and see how the various concepts interoperate. At the end of each major section of the book, you have an application that is actually useful, rather than a bunch of small programs that just demonstrate individual programming concepts.
The book assumes no prior knowledge of Macintosh-based programming, although it does assume some general programming knowledge as well as knowledge of the ANSI C programming language.
If you're serious about developing applications for Mac OS X, buy this book. You won't be sorry.
4 of 4 people found the following review helpful
on October 12, 2002
I have found this book to be a very helpful guide to learning Cocoa. The examples are easy to dive into, and I have found that I get more and more from them as I return and review them for the third or fourth time.
Unfortunately, Building Cocoa Applications is also riddled with errors. Make sure you get a copy of the unconfirmed errors from O'Reilly's web site. As you dig into this book, these comments and corrections are invaluable.
8 of 10 people found the following review helpful
on May 9, 2004
Not recommended, although some people like it a lot. More errors in the text than others, making you go to the web for errata pages. Relies too much on just presenting source code for the reader to type in, without adequate explanation of what the code does and why it's structured the way it is. Less of a gentle introduction than Hillegass's book "Cocoa Programming for Mac OS X", less comprehensive than Anguish's book "Cocoa Programming".