Can you believe it, I’m still finding things to write about! Hybrid apps is my subject of choice today because I was reading The Elixel Summer Update blog by a colleague and it referred to hybrid applications so I saw it as an opportunity to expand my knowledge again and learn what the heck they are.
Previously we have looked at the option of web apps as well as mobile apps but did you know that mobile apps can be built in 2 different ways? You can get native apps and hybrid apps. Primarily we create hybrid apps and here I’ll explain the difference and why we choose to build them that way.
Native apps are applications written in the platforms native language. As we all know Apple devices run on iOS and a large proportion of the other mobile devices on the market run on Android and both of these platforms require code written in different languages. Think about me, I speak only English as a language (which honestly I’m ashamed of, I should learn another but that’s another topic) so there’s no point you speaking to me in Polish or Chinese as I wouldn’t understand what you’re trying to tell me. One platform cannot understand the others language.
Hybrid apps are different. They are applications that are written in one language and then wrapped in another platform which essentially makes them understood by all platforms. This extra platform works like a buffer between the language the app has been written in and the language the devices platform is wanting. This middle buffer platform doesn’t translate the code as such but helps the devices platform understand what the code is saying.
So our reasoning for choosing to build hybrid apps is because the process is faster during the build stage and easier to maintain once up and running and they work just as effectively as native apps. When the apps are built and designed to a high standard the end user is unlikely to be able to tell the difference. With our hybrid apps we do choose to use some native app functions when they are needed, for example you need to be able to use the platforms native language when trying to access a geolocation or manage push notifications. These functions aren’t available when writing the code in a hybrid language therefore we use plugins to achieve this. Plugins allow us access to these additional features that are only available within the native language.
I can see all your faces now and I appreciate you might still be feeling a bit confused, this is a hard post to write without using too many techy words. I am putting together a glossary style document called ‘A Non-Techy Talks...Terminology!’ that lists some of the tech jargon with easy to understand explanations, so keep an eye on the main blog page over the coming weeks.
I hope this has gone a little way in helping understand the difference in the type of apps and their languages and why we like to build one over the other. You can be kept up to date with more in my series of blogs or any of our other great content by heading back to the main blog page and hitting Subscribe!
Next up in the non-techy talks series: Terminology.