Mobile development debunked, what are the options and how are they different?
With the number of mobile phone users in the world expected to pass the five billion mark by 2019 (Source: https://www.statista.com/statistics/330695/number-of-smartphone-users-worldwide/), it’s a given that businesses are turning to mobile apps to reach customers and streamline processes. At Scaffold Digital we have noticed a rise in the interest of creating bespoke mobile applications for business and organisations.
While initially the only real option to develop an app for iOS or Android was to write native code, there are now a whole range of different toolkits to make a native-like experience for users. In this post we will explore some of the more common ones and have a look at the pros and cons.
Over the last 5 years there have been a vast array of different tools built to allow a developer to write a single code-base and deploy it onto a variety of different platforms. This is called hybrid or ‘cross platform’ development where you benefit from the lower overheads of writing and maintaining a single code-base (written in a different language to the native application) and through a compile process your app will become a native application.
Some of the options include:
- Xamarin (Microsoft)
- React Native (Facebook)
- Qt (Independant)
- Unity (Independant)
- Ionic (Independant)
Each of these toolsets have different features and achieve very similar outcomes. React Native is the framework with most popularity at the minute however our first choice and tool used in the comparison below is Ionic. It has one key benefit over the alternative options listed above in that it is a web-first framework. This does mean you sacrifice some performance however for us it gives the ability to deliver solutions across iOS, Android, Windows, Blackberry (and other platforms) alongside the web. We believe the future of software is in the browser through progressive web apps and Ionic ensures we can build a truly cross platform codebase.
- Faster development cycles thanks to a single codebase
- Lower project costs
- Rapid prototyping means you can arrive at a functional application more quickly than a fully native build process
- Native modules can be written to access the full performance of the device
- There is a small trade-off on performance but it isn’t noticeable in a well-built app
- There is some reliance on a third-party framework when breaking changes are released
Commercially, this provides better value (value per hour), however not all apps will suit this approach. Chances are that you already have a hybrid app on your phone but just haven’t realised.
For many people the only way to build an app is fully native, if you’re an apple developer this will mean either Objective C or Swift, If you’re an Android developer this will be Java. A native application is basically a program built using the language designed to get the most performance out of the device.
The Apple development ecosystem is pretty closed off as you will need Xcode (and a Mac to run it) to be able to develop your application. On Android there are several choices here but ultimately Android Studio is the place to start.
- Unlock full device performance
- Latest features and functionality available
- No reliance on a third-party framework
- You will need to develop a fully native codebase for each platform
- You have to maintain two separate code bases
- You would have to hire an iOS developer and separate Android developer to avoid a lengthy delay in rolling out an iOS and Android app
Commercially, this is more expensive (value per hour) if you want to rollout an application to more than one platform. That said it’s also the option that gives you the most performance if you have a particularly processor or memory intensive application to deliver.
As client needs change project to project we are constantly looking at the most appropriate technology solutions and our own workflows to ensure we deliver the best product for our clients. Right now we offer a mix of these services commercially and always evaluate the most appropriate solution to a problem for the client. As one of a few trusted partners for Ionic we have the know how to build efficient and effective cross platform solutions.
If you’re considering creating a mobile app for your business or organisation, contact our team of experienced hybrid & native developers today for a free quote.
Find out more about our app development capabilities
View app-based solutions we have delivered