Friday 1 August 2014

Oh 'Appy Day!

Apologies for the terrible pun. It's probably a good thing I didn't become a serious journalist.

I wanted to write a post about mobile development for several reasons - I got very confused by this initially and I'm probably still pretty confused (if anybody wants to correct the technical info in this post please do!), but I had a wonderful conversation with a CTO yesterday and thought it was worth pondering with my new found revelations!

Essentially there are three main ways to develop mobile applications, Native, HTML(5) or Hybrid, which sort of straddles both.

HTML(5) Applications are quick and easy to create because they are written as normal web app. They will be available over multiple devices, but will probably have performance issues as available only via the web browser.

So you can wrap them, to create a Hybrid Application, using a wrapper like PhoneGap/Cordova (probably best known) to embed it into a native app. Worth thinking about how you want to market your app, because apparently (I was told during my degree never to reference Wikipedia...) the wrapper sometimes doesn't make the performance sufficient for it to be 'native' enough for the Apple store.

Native Applications run faster than web (HTML) apps because they use a specific language for a specific platform (so Java, C, C#). No translating or compiling has to be done to make this happen. The disadvantage is you have to build separately for iOS and android if marketing your product to both platforms, but result will be fast and more responsive.

Useful chart

If you're interested in reading in more detail than this snapshot, then this is a great article! 'Appy Developing Folks!