iPhone Development 101: How To Get Started with iPhone Programming

If you have an iPhone or iPod Touch, chances are you’ve come up with a couple good app ideas. Wouldn’t it be cool to take the next step and develop your app and get it in the App Store?

In this article you’ll learn just what it takes to get started – what you need to have or buy and what the best way to learn is–whether or not you’re already familiar with programming!

What You Need
First, to develop on the iPhone using the standard development environment, you will need a Mac. If you don’t have a Mac, the cheapest way to get started is with a Mac Mini, which is more than sufficient for development, and currently retails at $599.

Second, you will need to join Apple’s iPhone Developer Program. By joining the iPhone Developer Program, you will have access to everything you need to build apps and release them on the App Store. This costs $99.

Finally, although it is not required, I highly recommend you either have an iPhone or iPod Touch yourself. Although you can develop code for the Simulator, there are some functions that don’t work on the Simulator, and there is nothing better than testing on an actual device.

As for which device to get, an iPod Touch is the cheapest route, but it lacks some features such as a camera. If you decide to go the iPhone route, I’d recommend buying a 3G rather than a 3GS for development if possible. Yes the 3G is slower, but that is a good thing – this way you will see how your app performs on the lowest common denominator.

Learning Objective-C and the iPhone SDK
The most common programming language for the iPhone is called Objective-C. If you are new to programming, or to Objective-C in general, getting familiar with this is the first step. After that, you can move on to learning how to program specifically for the iPhone!

One of the most popular ways to learn how to program for the iPhone is to take an online course available for free from Stanford University: iPhone Application Programming. This is a set of video lectures you can download from iTunes that cover both Objective-C and the most important elements of the iPhone SDK, and is highly recommended.

If you prefer to learn from books, I’d recommend the following:

  • Programming in Objective-C 2.0 by Stephen G. Kochan. This book is a great introduction to Objective-C from the ground up, starting with its foundations in C and moving forward. Personally, I was already familiar with C and C++ so I skimmed through to learn the differences with Objective-C and as a reference later.
  • Beginning iPhone 3 Development: Exploring the iPhone SDK by Dave Mark and Jeff LaMarche. This is honestly one of the best programming books I’ve ever read, and does a great job giving you projects you can work along with for the most important concepts in the SDK. After going through this book and doing the sample projects, you’ll be well on your way toward making your first app!

If you prefer to learn online, the iPhone developer center has a detailed Objective-C guide and iPhone Application Programming Guide that you can go through.

Your First App
Once you’ve learned the basics it’s time to make your first app! When developing your first app, I’d suggest the following:

  • Start small. You don’t need to create a masterpiece for your first app – it’s best to keep things simple while you are starting to learn.
  • Ask for help! Sooner or later you’ll come across a question – don’t be afraid to ask for help! There are some great message boards at iPhone Dev SDK, or you can visit #iphonedev on IRC (freenode).
  • Don’t expect to be an instant millionaire. Yes, everyone has heard about the raging success of the “iFart” app and wants to make something just like it! But given that there are over 100,000 apps in the app store, it’s easy to get lost in the shuffle. Take it slow and steady!

Have Fun!
Programming for the iPhone is a joy – there’s nothing better than having an app you developed on your phone that comes in handy, or getting to show off your creation to friends. Enjoy the journey and have a blast!

If you have any questions or thoughts that would be useful to new iPhone developers, please comment below!

This article was brough to you by TouchMyApps special contributor Ray Wenderlich, developer of the all-in-one utility app AppVault Pro

  • Terry

    Thanks for this. I am a web designer with no C programming background. I’d like to venture into iphone app development as an extension of my business so I was wondering what my starting point should be and a proper process to follow. This is a good ‘sitemap’.
    Thanks again.

  • http://www.raywenderlich.com Ray Wenderlich

    Glad you enjoyed it! If you ever have any questions I can help with, let me know :]

  • Charles

    Great overview for someone with an idea and has not written a program for 25 years. I see some sites advertising app wizards or Seattle clouds as example. Can these sites address all programming needs, or is there an application you recommend ? As an example, I wanted something to appear on the opening screen before you unlock your iphone.

    Thanks

  • Pingback: iPhone Development 101 – The Best iPhone Development Sites for Developers | TouchMyApps

  • Pingback: iPhone Development: Developing Apps for Fun and Profit – Part 1 | TouchMyApps

Next ArticleThe Horrible Vikings in Review – Loot, pillage, plunder, hold the babe for ransom and free the kitties!