There are tons of great ways out there to learn iOS these days. The great thing is that most of those resources are free and available instantly online!
In the early days, the only resources out there were books that you had to buy and read through. That’s how I learned iOS. I wouldn’t recommend learning this way today because one of the greatest learning resources available today is the Stanford iPhone Programming Course videos that are free on iTunes. There are about 50 videos and they are the course lectures taped and provided for free so that you can download them and watch them as if you were sitting in the classroom at Stanford University!
Even with this great resource, make sure that you do some actual coding and practice exercises throughout watching the videos. When I learned iOS development, I read through the whole book from front cover to back and realized that when I sat in front of the keyboard to write code, I didn’t know where to start!
Just like reading the book front to back, if you watch all the lectures without ever doing any exercises, you won’t absorb the material and at the end of the lectures, you’ll have a deceiving confidence in yourself.
Only when you sit down in front of XCode (the development environment where you write code to build iOS apps), you’ll realize that watching video lectures is not the same thing as actually doing the coding!
The other thing you may consider is YouTube videos where people teach you how to code. The thing to beware of, however, is incomplete video series or videos where the author doesn’t teach and only tells you what to click or type. In that case, you’re not learning; merely following a recipe.
Lastly, Apple also provides great tutorials and quick starts for new developers. Once you sign up as an Apple iOS developer, you’ll have access to these resources as well as their developer forums where you can ask and answer questions.
The most important point, no matter which method you choose to use, is to practice and fail fast; because only through failing and practicing will you grow and learn! Don’t worry if you don’t know anything yet. The best way I found to learn was actually to start coding and then when I encountered something that I didn’t know how to do, I would just search for how to do it online and integrate that wisdom into my repertoire.
Soon enough, you’ll be building your applications and turning your app ideas into a reality!