A simple guide to mobile app development

WQA

WQA

WQA

When you’re in the app development world it’s easy to assume everyone knows their Swift from their Kotlin. But if you’re a non-technical founder looking to build your first mobile app, we know the process can feel like a total black box.

There are plenty of ways to go about making an app and every developer has their opinion on what’s best. But the development world moves fast and a lot of the advice that’s out there simply isn’t true anymore. To help you find the best way for your project, here’s our simple guide to the different app development routes.

Native app development

In the early days of smartphones, there was only one way to go about building mobile apps: native development.

Android and Apple’s iOS have always used different programming languages. Back in the 2000s that meant that if you wanted your app to run on both platforms, you had to make it twice – two versions that looked identical in terms of UI, but underneath were built native to each programming language: Objective C for Apple, Java for Android. The best thing about native development is that it gives developers total power. Anything the operating system can do is fully exposed for you to use without relying on a layer of third-party plugins to weave it together. It’s like renovating a house and being able to get right into all the plumbing and electrics before the plasterboard gets in the way.

But of course, that doesn’t come cheap.

Being able to directly access the guts of the OS means you also need to lay down all that plasterboard and carpet yourself later – and you’re going to have to do it all twice. What’s more, native developers typically specialise in one platform or another so you’ll almost always need two separate teams. Finding and coordinating them isn’t the easiest job in the world.  Also, for absolutely optimum performance you’ll need developers who code in the latest native languages (Swift for Apple, Kotlin for Android). And to be honest, there’s just not that many of those developers about.‍

Pros of native development

  • First-class access to all the operating system’s features

  • Not dependant on third-party plugins

  • 100% performance

Cons of native development

  • You’re effectively building two apps instead of one

  • Need two teams of hard-to-find specialists

  • When the work doubles, so does the cost

Hybrid app development‍

Hybrid apps came about in answer to the huge costs and workload of building a fully native app. They’re a hidden web browser packaged like an app – they can be downloaded from the app store or, like Progressive Web Apps, directly from your website.

The BBC and their digital app for the BBC News did exactly this. Their Objective C and Java apps are disguised web browsers with the navigation removed.

A bonus of hybrid apps is that any updates can be done “over the air” – meaning whenever the app loads it fetches the latest version of the website, so you don’t have to wait through the lengthy app store review process (or wait for the review team to finish their Christmas break).

The trade-off is performance. Offline functionality is obviously limited, and to access any of the phone’s OS features you’ll need to build a layer of third-party plugins. And these need an exhausting amount of maintenance to keep pace with Apple and Android updates.

All in all, a hybrid app running on a web engine loses a hefty chunk of the performance you’d expect from a native app. So realistically, hybrid apps only fit the bill if you’ve got a tight budget, or if you only need an app with a newsfeed and some buttons.

Pros of hybrid development

  • Cheaper and simpler than two rounds of native development

  • More cost-effective for smaller projects like internal apps

  • Hybrid apps can update instantly without going through the app store’s review process

Cons of hybrid development

  • Noticeably reduced performance compared to a fully native app

  • Limited offline functionality

  • Dependant on third-party plugins to access OS features

Native cross-platform: the best of both worlds

What about if you want an app that does more than hybrid but doesn’t rack up the costs of fully native? That’s where cross-platform development, like the React Native and Flutter frameworks, comes in.

Cross-platform is a way of building apps for iOS and Android using a single code base – with React Native that’s Javascript – which is then converted into the different native languages of each operating system

The development time is halved and you don’t need to hunt down specialists in multiple coding languages. And because the app is written in the native language you get optimal performance from the OS features.

There isn’t the total access of a fully native build so you’ll still have to use some plugins along the way. But a cross-platform app is indistinguishable performance-wise from a native app and is far simpler, quicker and cheaper to develop.

Pros of cross-platform development

  • Value: almost two native apps for the price of one

  • Half development time so you can get to market faster

  • Ideal for 90% of use cases

Cons of cross-platform development

  • Slight reduction in performance compared to native, but it’s indistinguishable

  • The build chain is complex, but we specialise in making it simple

Which method is best?

Ask yourself this: Do you have £10m to spend on an app? If you do, Native development is your best path. Native development might be the oldest and most intensive method but there’s still a place for it, and plenty of big players like Airbnb use it for the access and support that comes with it. But those big players also have the money to spend on a native build.

Otherwise, you’re probably going to want a cross-platform app so you can focus your resources where they matter. React Native isn’t a compromise – and for the vast majority of use cases you can access everything you need at a fraction of the cost and development time.

Which cross-platform framework should I choose?

If you’ve dug into your cross-platform research you’ll notice there are two popular frameworks. If you want help weighing them up, check out our thoughts on React Native.

A few purists might argue that a fully native build is the only authentic way to develop a mobile app. And sure, a few years ago that still held true. But we say if React Native is good enough for huge brands like Meta, Instagram, AirBNB and Pinterest, you're in good company.

Power-up your
digitial delivery

Power-up your digitial delivery

If you want to learn more about getting your product or platform to market faster, contact us for a conversation and assessment of your unique digital context.

Build Better, Grow Faster

Delivering End to End Software Solutions, with a Cloud Native Advantage

Copyright © WQA 2023. All Right Reserved.

Build Better, Grow Faster

Delivering End to End Software Solutions, with a Cloud Native Advantage

Copyright © WQA 2023. All Right Reserved.

Build Better, Grow Faster

Delivering End to End Software Solutions, with a Cloud Native Advantage

Copyright © WQA 2023. All Right Reserved.