This is the story of my iPhone development experience so far.
For iPhone Development: Apple Mac computer, iPhone 3G, iPhone Developer enrollment
For Android Development: Windows or Mac, a supported Android Phone, Android Developer registration
That’s all you need to start. Item #3 can wait until you are ready in a couple of weeks of study and experiments.
There are two routes that one can take for iPhone development. I took both one by one and have seen the pros and cons of both.
The Easy Method
Appcelerator Titanium is an excellent tool for existing web developers to start developing iPhone and Android applications. They have free video tutorials that walk you through some very essential training of both iPhone and Android development setup. These are must watch videos as they’ll walk you through step by step guide on how to register as iPhone developer and setup the needed certificates for the app submission.
Pros: Extremely easy, do not need to learn new programming language, with very little effort you can publish your apps on Android platform as well.
Cons: Its still in early stages therefore it may have some bugs but you can work around them, documentation and help is limited but growing, does not have 100% api support of the underline platform.
If you want to develop small apps which does not require too many complications, it works great. Many great apps have been developed on it including some games. I would strongly recommend Titanium for anyone who does not want to learn a new language – Objective C.
The Difficult Method
For many it may not be the difficult method if you are hard code c/c++ programmer, but since I’ve spent most of my time in system administration and web development, it was a rough ride.
Step 1. First thing you need to do is learn Objective C. There are some really good books in the market. If you know C, then its not difficult. But if you don’t know C then you need to go a step back and learn C first. Once you know C, you can start learning Objective C. The book by Apress is awesome. This is a must read book if you don’t know Objective C. Trust me I know what I’m talking about. There is no easy way out of this. I started looking into iPhone SDK before looking at this book but it was not making real sense until I stopped and started with this book. There are some cool tutorials on the web as well, some small some big, but this book will get you to stand up.
Step 2a. If you like video tutorials, I strongly recommend Lynda’s iPhone SDK tutorials. They are just too good to get you up to speed. You don’t have to do any reading. Just watch them and go through them as much as you want by hand.
Step 2b. If you want to go to the book directly, Beginning iPhone 3 Development: Exploring the iPhone SDK is the best book to get you started. It will walk you through step by step and within a week’s time you’ll be able to not only code yourself but understand an existing iPhone project if someone shares their code with you! 😉 First 11 chapters are good enough and then it gets into advance stage.
Step 3. Watch the Appcelerator Titanium videos as mentioned in The Easy Method. They will train you how to enroll in iPhone developer program and get the developer and production profiles setup on your Mac. You need those to test the app on your iPhone and later build distribution binary.
Here are the pros and cons of this development strategy:
Pros: Professional IDE (XCode) and Interface Builder (IB) provided free of cost by apple (XCode 4 coming soon will rock developers world, its just too awesome, watch WWDC video about it), basic UI design can be done in IB, lots of help available on the web plus many books.
Cons: Need to learn Objective-C, also need to learn iPhone SDK, you are limited to Apple products.
That’s all folks. If anyone has any question, feel free to ask me and I’ll update this blog post accordingly.