3 ms·
I learned Obj-C/Cocoa using some of the books mentioned, plus a few others. My opinions for them are below. In general to get into Mac/iOS development: 1)
by dgallagher 16y ago
I learned Obj-C/Cocoa using some of the books mentioned, plus a few others. My opinions for them are below. In general to get into Mac/iOS development:
1) Learn C
2) Learn Objective-C
3) Learn Cocoa (Mac) or Cocoa Touch (iOS) - both APIs are similar
--------------------
C Books:
--------------------
Learn C on the Mac, by Dave Mark
- Very newbie-orientated
- Hand-holds you through lots of stuff
- HIGHLY recommended for beginners
- Written specifically for Mac users (using Xcode 3.x)
- Won't make you an "expert" in C, but gives you the basics
- Code examples all available online
Bottom Line: Recommended
Programming in C (3rd ed), by Stephen G. Kochan
- Well written
- on-par with "Learn C on the Mac" regarding beginner status
- Not platform specific (you should know Xcode, TextMate)
- Code examples don't generally jump chapter-to-chapter
Bottom Line: Recommended
--------------------
Objective-C Books:
--------------------
Programming in Objective-C 2.0 (3rd ed), by Stephen G. Kochan
- I haven't fully read this book, but use it as reference
- Seems to be a great continuation from Mr. Kochan's C book (above)
- I wish I read this instead of Dalrymple/Knaster's
Bottom Line: Can't give a recommendation because I haven't fully read it
Learn Objective-C on the Mac, by Mark Dalrymple and Scott Knaster
- Continuation from "Learn C on the Mac", but I didn't like it as much
- Writing style was a bit confusing at times. I preferred Dave Mark's C book.
- Mac-orientated (using Xcode 3.x)
Bottom Line: Recommended, with reservations
--------------------
Cocoa Books:
--------------------
Cocoa Programming for Mac OS X (3rd ed), by Aaron Hillegass
- Chapters 1-8 were fine. Chapters 9-35 are a NIGHTMARE for newbies.
- Book uses new terms many times without defining them
- Better know what a File's Owner is, or else Chap 9 will confuse you, etc
- For one of the code examples the author wrote "I don't really expect you to
understand every line of that code now, but browse through the method and try
to get the gist."
- Book must be read sequentially, and code examples must be done sequentially.
Code examples in later chapters can reference code 5 chapters back. There's
no skipping around in this book, even for unrelated topics. Very annoying as
a reference book.
- For non-newbies, gives a "taste" of some of Cocoa's popular API's. You'll
have to read Apple's docs to really learn how to use them.
- Reading this book after getting some Cocoa experience was much easier.
Bottom Line: Very good intro to Cocoa's API's, but NOT for newbies coming
straight from an Objective-C book. Read another Cocoa book
first, program in Cocoa for 3-6 months, and then get this book.
Cocoa Programming for Mac OS X for Dummies (2nd ed), by Erick Tejkowski
- THIS is the best "newbie" Cocoa book I've read. Very easy to understand
and follow.
- Hand-holds you the entire way.
- Many "minor" errors in the book and code examples, which is its only
downfall. However I managed to figure them all out and get every example
working.
Bottom Line: Recommended for newbies. Only caveat is there are a lot of minor
errors in the book, but I managed to figure them all out without
much sweat.
Dave Mark has also written a new Cocoa book which I haven't read: Learn Cocoa on the Mac, by Jack Nutting, David Mark, Jeff LaMarche. If it's anything like Mr. Mark's C book, it's probably pretty good. Check reviews on Amazon, etc...
--------------------
Also of note, Apple announced Xcode 4 in June 2010, which will replace Xcode 3.x "sometime in the future". Currently it's in beta. It has a very different user interface than Xcode 3.x, meaning just about every Mac programming book will become dated the moment Xcode 4 comes out. Both 3 & 4 appear "similar", but different enough to confuse new programmers.
- yardie 16y agoI've been using the Xcode 4 beta on and off for a few months and I don't think it's that much o a change. GCC was still the default compiler. The biggest change was that instead of having to use interface builder it's all n there. So while it may differ from the current books, a few minutes of familiarization should have you back on track.