Saturday, April 23, 2011

How To Get Started Programming iOS iPhone/iPad Apps

I get a lot of questions from friends, family, customers, and just curious people on how I learned how to create iOS applications for the iPhone and iPad.  I would like this post to serve as a starting point to guide people on how to get started.  Feel free to comment if you have more specific questions you would like me to address.  I realize that everyone's background is a bit different so some people may have a steeper learning curve than others.  For starters, a little about myself.  I have a degree in computer engineering and over 10 years experience developing software, firmware, drivers, and hardware for embedded systems.  Developing for iOS is some of the most exciting work I've done.  Apple has created a great ecosystem and opportunity for developers.  I think for newcomers to software development, the iOS platform is a great one to start with.  For experienced developers, it is a matter of learning the tools, learning the language specifics, learning iOS specifics, and learning the App Store submission process.

What hardware and software do you need to develop for iOS:
  • A Mac computer. The lowest cost entry point is a Mac Mini which at the time of this writing is $699 new or $619 used on amazon.com. I use a MacBook Pro and it really is an awesome experience for developing.
  • Xcode IDE. This can be purchased through the Mac App Store or if you sign up to be an Apple Developer and pay the $100 annual fee, you can get it free at the iPhone Development Center.
  • A iOS device.  Xcode contains a great iOS simulator for iPhone and iPad that works really well and will be enough for you to experiment with and lay the groundwork for your app.  When you are getting serious about development you need to get a real device to make sure your app runs correctly.
The links below are good starting points for experienced developers that are new to iOS.
iPhone Development Center
http://developer.apple.com/devcenter/ios/index.action

iPhone Application Development (iTunes U Course)
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=384233225

Developing Apps For iOS (iTunes U Course)
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=395605774

Good Objective C Language Book
http://www.amazon.com/Programming-Objective-C-2-0-Stephen-Kochan/dp/0321566157/ref=sr_1_1?ie=UTF8&qid=1303790312&sr=8-1

Good Book That Walks Through App Development
http://www.amazon.com/Head-First-iPhone-Development-Applications/dp/0596803540/ref=sr_1_2?ie=UTF8&s=books&qid=1303790456&sr=8-2

WWDC Session Videos:
Apple now posts all the WWDC sessions videos from their cool annual developer conference.  All you have to do to view them is sign up to be an Apple Developer.  You don't even have to pay the $100 annual developer fee to view them.  I have viewed applicable sessions from 2010 and I am currently going through the 2011 sessions. These are great for learning new concepts and staying on top of what Apple will be bringing out in the future.

At some point you have to just dive in and start experimenting.  A suggestion for getting started is to print out the first assignment walkthrough for the iTunes U Course listed above.  It is a calculator app.  The assignment gives you a complete walkthrough on how to build your user interface in XCode and the code behind it.  I think it is a great start for diving into Apple's environment and objective C.

If you run into any additional resources worth adding, please feel free to comment them.

No comments:

Post a Comment