I’ve recently been asked a couple times about resources for developers who want to get into iOS development. I don’t pretend to be an expert, and am constantly learning myself, but these resources are ones I find useful, believe would be good for people just starting, and should certainly get you started. There’s lots of information out there, so don’t get too overwhelmed.
The First Place
I’d start is with a good book. Aaron Hillegass is the goto guy for learning Cocoa and Objective C.
Second, Apple’s documentation is quite good and will be your constant companion. Use the Documentation tab of the Xcode Organizer to search and browse the docs. There are many many sample code projects on various topics.
The docs are also online… some good starting places are:
View Controllers are the “main entry point” when using UIKit. It is important to understand them… many iOS devs do not (I was making fatal mistakes for my first year!). Read Apple’s View Controller Programming Guide until it makes sense. Paying particular heed to the view hierarchy and view controller hierarchy concepts.
Attend a Conference/Course
If you’re at all like me, you’ll most likely come away inspired and energized to build cool stuff. I’ve been to two 360iDev’s now and loved them both. Highly recommend.
The Pragmatic Studio just announced a session which looks promising.
Follow people on Twitter who talk about iOS and Cocoa. There’s a lot of people out there with a lot of experience.
This should lead you to some great blog posts and open source projects which will help you learn and grow, as they continue to do for me.
Check out Ray Wenderlinch’s site for some great intro to intermediate tutorials to get you going.
A great place to go for answers is StackOverflow. Search before you post… it’s probably been asked (and answered) already.
Lots to know
There is a difference between intelligence and knowledge. Do not sell yourself short.
Probably about the most astounding thing I encountered when I first joined this community, for that is what it is, was the unselfish and unpretentious giving of knowledge and experience. There is an amazing amount of source code out there, for free. People are writing blogs and answering questions all the time. When you have the experience, pay it forward and help the community by sharing.