My Experience with Mobile App Development

|
Comments
(0)

Our team was approached with an iOS app idea in May, 2012 and I had spent some time on improving my iOS app development during the summer of 2011. I learned the basics about the Objective-C language and wrote some simple iPhone apps to test my skills, but I did not learn enough to create an entire application for a client. Having such little time to learn more about iOS development and such high expectations, I was forced to find alternative ways to develop these applications using technologies I am already familiar with. With this objective in mind, I started searching Google for ways to develop iOS apps using C# because that is a language that I know and use everyday, and my coworkers would be able to help as well.

Google Screenshot

At the top of my Google search results there was a link to a company called Xamarin, and they created a framework known as MonoTouch that allows developers to use C# and .NET code in their iOS applications, as well as all of the things that are included in those libraries (LINQ, Delegates, Events, etc.). Xamarin's libraries also allow for cross-platform development between iOS, Android, and even Windows Phone, giving developers the power to reuse code on multiple devices.

I decided to download the evaluation trial of MonoTouch and MonoDevelop (the Mac Integrated Development Environment) and started using it immediately.MonoDevelop
There was virtually no learning curve involved and I was able to write a "Hello World" app (with the help of a tutorial) in less than an hour. There are many documents online that are available to developers and Xamarin's support group is very quick to respond to inquiries, making problem solving a relatively simple task. I was even able to get help from the founder of Xamarin and the MonoTouch project by posting questions on StackOverflow and tweeting him the links.

So far, the transition from Objective-C development to C# development for iOS devices has gone smoothly and I look forward to learning more about these frameworks and tools.