Easy to understand, authoritative without being patronizing
Best for absolute beginners only
If you are keen to get into the world of Mac programming, in particualr creating iPhone apps, but don't know where to start, you do now. This really is a must-read for any Mac coding newbie that will leave you absolutely ready to tackle the iPhone SDK and start rolling out great apps.
Have you ever wanted to write your own code to create software for the Mac, iPhone or even the iPad but have never actually programmed on a Mac platform? Great, then this new book by Tim Isted is for you. Tim has been coding for the Mac for 15 years, and now he's sharing that knowledge with a wider audience of Mac coding newbies through the Beginning Mac Programming book.
Insisting that he will take the reader on the fastest and easiest route to releasing software, even if they have never written a single line of code before, Tim is obviously not scared of making bold promises. Thankfully, by adopting a 'code as you learn' approach to teaching, he is more than capable of walking the programming tutorial walk. Indeed, by just the second chapter of the book the reader starts to develop their very first program. "We’ll be jumping headfirst into creating applications on the Mac that look and behave like the other Mac applications you’re used to" Isted says, adding that as well as learning general programming principles the reader will put them "into practice in real-world situations, right from the start".
I found the hand-holding without patronizing approach to be perfectly suited to the target reader, that is the Mac or iPhone user without a computer science degree but with a love and understanding of the hardware itself. Indeed, non-coding power users will love this book because it constantly assures the reader, by word and deed, that the goal of creating Mac software or an iPhone App is never ultimately out of reach.
The book is sub-titled 'Develop with Objective-C and Cocoa' by the way, which gives you a big clue as to the direction it takes. But whether it is discovering the world of free tools and software that Apple makes available to developers, or learning how to code in Objective-C and work within the Cocoa framework, Isted is always your friend and you never forget it. After a particularly challenging chapter on objects and memory management, Isted concludes "Wow, this has been a long and intense chapter. It's going to need a lot more experience, caffeine, or both to fully understand much of the content. Try not to worry if the concepts seems a little hazy right now; they should soon become second-nature once you've spent some time writing code. The main thing to take away from this chapter is that if you allocate an object using 'alloc' you need to take responsibility for releasing it when you're done." Oh that all computer programming teachers were this honest and had this kind of grasp on the important stuff.
The only downside of the Isted approach, and which could make this book hard going for some, is that it works best if you've not tried and failed with other teachers be they in person or in book form. This is a book for the absolute beginner, not the programming student looking for a little extra help. That said, if you fit the bill then you really won't regret your investment in this superb coding tutorial.