So I have released two native iPhone apps in the last 2 months. The first iPhone app is called Salary Calculator, and it was released on 06 October 2010. The app was submitted to iTunes Connect on 28 September 2010.
The second app was a niche app for Property Investors in Australia, called Property Cash Flow Calculator. It was developed in just a few hours on one weekend, submitted to iTunes Connect on 24 October 2010 and was made available on App Store on 03 November 2010.
Many people have asked me if iPhone app development is hard or if it's worth the trouble. My answer is while it is not super easy, it is not impossible if you're willing to learn a new language and syntax. It also helps if you have a goal that you want to achieve (for example, an app in mind that you wish to develop), rather than merly reading tutorials or books on iPhone app development. I have created a few iPhone web apps for my Web Development company and therefore my main goal was to convert some of them into native apps.
Here are five important steps that I took before developing my first (and second) iPhone apps.
1. Buy a mac. This is one of the most expensive investments one has to make when stepping into iPhone app development. I got myself a Macbook Pro but a MacBook Air or a Mac Mini would work just fine too. You need a mac because iPhone software development kit (SDK) only works on the Apple platform.
2. Buy an iPhone. Although it is not completely necessary, it is recommended to have an iPhone before developing an iPhone app. Even though the iPhone SDK comes with an iPhone simulator, using an app on a real iPhone give you a much better understanding and experience of how an app works. You can also download existing apps that are available on App Store for an inspiration. If you don't mind a second hand, you can get a second hand iPhone handset from Amazon or ebay for half the price.
3. Download and Install iPhone SDK. iPhone SDK comes with XCode, iPhone Simulator and a suite of additional tools for developing apps for iPhone, iPad, and iPod touch. According to Apple, XCode is the hub of your development experience and I tend to agree with that. XCode is simply an IDE just like Eclipse or Dreamweaver but it is designed for app development on Mac. You need XCode in order to develop, compile, test, release and submit your iPhone app. Note that SDK can be downloaded for free of charge. You only need to pay for the Developer Program (USD99/year) when you wish to test the app you have written on a real iPhone (instead of the iPhone Simulator) and submit it to the App Store.
4. Read and Learn. Now that you've got everything set up and ready for your first iPhone app development, start reading and learning all about how to develop an iPhone app. This is a very important step because the learning curve can be quite steep for those who do not have C / C++ programming experience. It is also cruicial to know common jargons used in iPhone app development, such as Interface Builder, MVC (model, view, controller), xib, nib, delegates, etc. The best place to find all the resources to learn is 100 Free Courses & Tutorials for Aspiring iPhone App Developers. For those wanting my recommendation on which documentation/tutorial to read first, MIT has a course on Introduction to iPhone Development and the course outlines are available online for free.
5. Replicate a sample application. The easiest and quickest way to learn the syntax of iPhone Programming Language (Objective C) is to replicate and rewrite a sample application (Your First iOS Application) from the iOS Reference Library. You can also follow this tutorial which teaches you the same thing step-by-step.
While I am no expert on iPhone app development and I have not learnt or understood everything there is to learn, I am happy with my progress. The next app that I'd like to develop is something to do with databases.
Salary Calculator app was featured as one of the hottest apps under Utilities category in the App Store for 2 weeks now, and it was also featured in New & Noteworthy section a week after it was released. I am hoping the same result for Property Cash Flow Calculator. Wish me luck and happy iPhone app developing!