There are several ways to go about creating mobile apps, Several technologies and platforms have come and gone, have gained popularity or lost favor over the last couple of years. However, mobile app development can be broadly categorized into three different types of apps. Native Apps or the purist approach, Hybrid App technologies and Cross Platform Apps that deliver native like performance. Although this article will touch on each of the methods mentioned above for developing mobile apps, all of the future content and tutorials will focus on hybrid and cross platform technologies and tricks that can also provide native like performance.
Native App development or the right way of building mobile apps, is also the hard way of doing things as it requires the knowledge of three different programming languages, when developing the app for all three mobile platforms, IOS, Android and Windows. This approach will also require setting up of the different development environments and dependencies, required for each of these platforms, debugging, testing and updating will all have to be done individually for each platform, essentially it will be three different apps that are being developed. Due to the costly and wasteful nature of not being able to share a common code base or developer resources, native app development can only be recommended for mobile app development, if and when developing for any one single platform.
Hybrid App development, which is the easy way of developing mobile apps, is essentially a process of converting a regular web app or website, that uses web technologies, into a packaged mobile app that can run cross platform on any device. Although this sounds like magic, it's actually true and it can be used very effectively for mobile app development, especially with good and efficient coding practices.
In fact Hybrid App development is so easy that all a web developer needs to do is upload the web app to the PhoneGap cloud build services and have it output, mobile apps for each of the different platforms, all in a matter of minutes. However, as this is the easy way of doing things, there is a downside to it, and that is performance issues as well as user experience constraints, when developing one single app that works everywhere, through what is referred to as the WebView.
Given that major social networking sites, use this approach to build their own mobile apps, along with the popularity of Xamarin and React Native, two cross platform mobile app development ecosystems, indicate that mobile app development is heading in the direction of cross platform apps, with a shared code base, that deliver native like performance. As such future updates to this article will focus on the different technologies or services that promise both cross platform benefits and native like performance, as well as efficient coding practices, tips and tricks for Hybrid Apps, in order to make them more native like.
This article will periodically update with more content, infographics, reviews as well as tutorial links on how to use the different mobile app technologies for your own app development efforts.