Skip to main content

5 different ways to develop a mobile app

Wondering how to build an app? There are a number of different approaches that are now open to you. Tools such as React Native and Flutter (Google's recent addition to the party) are opening up new possibilities when it comes to mobile app development. Read on for our rundown of five different ways to build an app, to help to decide which one is right for you.

Building a site rather than an app? You need a website builder and web hosting service.

01. Native

The default way of developing on mobile is to write native code for each device – usually Java for Android and Swift for iOS. This can give you the best result, but the problem is that you then have two codebases to maintain.

02. WebViews

The earliest way to get around this was to build 'hybrid' apps that were essentially web pages rendered within an app container (referred to as WebViews). The Ionic framework is an example of this approach. This has limitations in user experience and relies on a JavaScript 'bridge' to interact with native services, which can impact performance.

03. React Native

The release of React Native gave us the ability to write JavaScript code (with React syntax) that used entirely native widgets. It still uses a JavaScript runtime but the presentation is not HTML and it doesn't use a WebView. This takes away a major limitation of older hybrid apps but can still suffer performance issues due to reliance on the JavaScript 'bridge'.

04. Flutter

While they offer similar reactive development styles, the major difference between Flutter and React Native is that Flutter dispenses with runtime JavaScript completely and compiles native code for multiple platforms. This offers superior start-up times and app performance. For more on this framework, take a look at our guide to getting started with Flutter.

05. Progressive Web Apps

One possible future for mobile development moves away from the native environment completely. Web APIs now enable much more extensive interaction between web pages and devices than in the past and service workers mean pages can be cached and work offline. The technology isn't quite there yet but some people are betting that the future of mobile apps is actually web technology. For tips on how to get the most out of them right now, take a look at our article on nine amazing PWA secrets.

If you're designing an app as part of a team, cloud storage will enable you to remain consistent and connected.

This article was originally published in net, the world's best-selling magazine for web designers and developers. Buy issue 310 or subscribe.

Read more:

Simon Jones
Simon Jones is a software engineering director in financial services, leading a team of full-stack developers. He has a background in computer science and UX design.