views:

801

answers:

8

Which resources did you find useful for learning iOS programming?

Books? website? videos?

+1  A: 

Apple's official documentation is the best way to go. Unlike other companies, Apple has pretty good technical writers. The risk of third-party resources is that you'll get misinformation or do things the wrong way.

lucius
A: 

developer.apple.com is essential for documentation and samples.

Gary
+1  A: 

For an experienced developer, yes, Apple's official documentation is the way to go to double check some information. For a newbie, no. The thing is, Apple's documentation is non linear (kinda like a website). When you are reading one article, it points to some ten others, so after a while you are lost and cannot know where to begin. Also, in most articles, it assumes some level of knowledge from the readers, which might not be correct. A book is always better to start learning from scratch.

Some of the books are quite good, like "iPhone in Action", "Headfirst iPhone development", etc... depending on your knowledge of Cocoa and your learning style. Then after you are comfortable with the basics, you can move on to studying Apple's sample code, iTunes U videos (which are good for theory, but code-level discussion is scarce), notable blogs like CocoaWithLove, Cocoa is my gf, Jeff Lamarche's blogs...

iamj4de
A: 

Beginning iPhone development: Exploring the iPhone SDK is a good introduction.

Link to the book on Amazon.

gnuchu
+2  A: 

Hey there,

I am a big fan of the Head First Series and they also have a book about iPhone Development: "Head First iPhone Development" from O'Reilly Media

I find it easy and fun to read. For more deeper technical stuff, the apple developer documentation is also really helpful. And there is a great podcast from stanford university: http://deimos3.apple.com/WebObjects/Core.woa/Browse/itunes.stanford.edu.3124430053 and finally, the WWDC videos are also available as podcast on the apple developer website.

have fun!

dreipol
A: 

Stackoverflow itself is an excellent training tool.

Just reading through a dozen or so questions everyday familiarizes you with the nomenclature and the general concepts. When you read about a class of framework you don't recognize, you can search the Apple Docs for it and get a little familiarity.

Information sticks to itself in your brain. The more information you already possess the easier it is to learn new stuff. Using Stackoverflow to pick up bits and pieces of iOS related info that may have nothing to do with your particular immediate focus will actually accelerate your learning of that focus.

More generally, I always recommend that people open an account at O'Reilly's Safari Books Online . For $10 a month you can get access to 5 complete books on iPhone programming. For $45 a month you can get unlimited access. Instead of having to choose one single "best" training resource, you can access dozens at once.

I currently have 32 different iPhone programming specific books on my shelf. When I need to understand something, I am not restricted to one author's mode of explanation of a particular subject. Instead, I can get dozens of different explanations from different perspectives of the same subject. That is very useful.

Considering that your average hardcopy programming book cost $30, Safari Books Online is very cost effective if your serious about learning anything related to programming.

TechZen
so which book do you find useful from O'Reilly Safari Books Online?
Henry
Probably Erica Sandun's "The iPhone Developer's Cookbook" http://my.safaribooksonline.com/9780321670168
TechZen
However, I would add that it is the collection of books itself that is the most useful. I don't have to have a favorite or best because I have 90% of the books on iOS dev that exist. Different books have different strengths and weaknesses on different subjects. Different people relate to different books better. My point is why restrict yourself to someone else's idea of the "best book" when for the same price, you can get them all?
TechZen
+4  A: 

Apples's documentation is decent at best; I'd recommended a series of books to get you going. I've read loads of them and my recommendation (read in this order) would be:

Programming in Objective-C 2.0 by Stephen Kochan for the Objective-C foundation. Do you know Objective-C? Do you know any C? If the answer is no to either of these, then definitely start here. From what I remember it also comes with videos.

One of the Apress books for your foundation iOS SDK learning: Beginning iPhone Development: Exploring the iPhone SDK by Dave Mark and Jeff LaMarche ramps up very well for a beginner and covers most of what you'd need to know to make a complete application from design to delivery.

And finally The iPhone Developer's Cookbook by Erica Sadun for additional badassery. I learned more from Erica's book than any other source. If you only buy one book, BUY THIS ONE. It's awesome, provides insane code source, loads of workarounds and useful helper classes and hacks.

My favorite introduction websites are:

  • Theocacao (make sure you read the topics on memory management and how @property works behind the scenes)
  • CIMG. Loads of great topics and tips.
  • Find the authors of these books on Twitter and follow them. Seriously, they post sample code, tips, and will help you directly. I've found it invaluable.
  • Open Radar. Developing for OS 4.0? You'll want to get to know this site as 4.0 is buggy as hell.

Definitely check out Stanford's Video class on Itunes U. I watched those after my introduction to Objective-C/iPhone and wished I had that when I started.

Apple's developer forums seem to be a nice place to rant about how much the SDK is broken, but beyond that I have not found much use for it. Apple's documentation has very little sample code and their samples on the site are dated (and often straight broken).

At the end of the day though, your best learning experience will be deciding to make an application and following through. You'll find how ridiculously hard some menial tasks are and how pleasingly easy other tasks are with the SDK. It's a up and down roller coaster no matter how much you know going in.

Typeoneerror
Beginning iPhone 3 Development gets buggy towards the end, both code samples and text. But still, it's very good. BTW: The link to the book is wrong.
Arne Evertsson
A: 

WWDC 2010 Session Video

http://developer.apple.com/videos/wwdc/2010/

Henry