Which Architecture to use for Mobile Application Development? – Bitcows LLC Home iPhone Electronics Open Source About Stickers Swag Store Home iPhone Electronics Open Source About Stickers Swag Store Which Architecture to use for Mobile Application Development? Which Architecture to use for Mobile Application Development? June 19, 2017 djmason9Android, Appcelerator, Coding, iOS, iPad, iPhone, Windows CEmobile Selecting your application architecture for a mobile application depends on a variety of factors, including user experience, integration, and speed. This article will help explain which application architecture to consider for your next project. In 2016 according to data released by StatCounter, 51.3% of all web visits last month came from mobile devices compared to 48.7% of visits from traditional computing platforms. By the end of 2017, business demand for enterprise mobile applications will grow at least five times faster than internal IT organization’s capacity to deliver them, according to Gartner. They recommended several best practices to overcome these challenges. Usability, security, integration, connectivity and speed are some of the challenges you will face in mobile application development. Rapid development of complex applications, if not carefully executed, can quickly lead into major support issues. A key best practice in Gartner’s list is the usage of rapid mobile application development tools. Various platform options are available for developing applications targeted for iOS, Android and Windows mobile devices. Mobile applications are classified into different types based on the mobile development architecture employed to create them. The first step in selecting mobile development technology is to decide the mobile architecture to be used. User experience can vary based on the application architecture used. Platform Specific Application Architecture – Native These mobile applications are written specifically for each target platform using programming languages and tools specific to that platform allowing full usage of the device specific features. A Native iOS application is developed using Objective-C or Swift, and runs only on iOS devices, whereas, a native Android application is developed using Android Studio in Java and runs only on Android devices. Here are some pros and cons on platform specific native application development: PRO Full access to device features Rich user experience Fluid animations and heavy graphics Can quickly take advantage of OS updates CONS Longer development timeline when multiple platforms (iOS, Android, Windows) are required. Higher maintenance and upgrade cost Higher resource costs due to various skillsets needed Code Shared Application Architecture – Native Compile Developed using a common programming language across all target platforms, these mobile applications share most of the code. For example the Axway Appcelerator platform enables mobile developers to use the JavaScript programming language to develop native applications targeted to run on iOS, Android or Windows mobile devices. On occasion some custom UI or components may need to be developed separately (depending on features) for each target platform. Code duplication can be avoided in this approach by building common business logic. Here are some key considerations on code shared native application development: PROS Common business logic Native compilation for each target platform Full access to device features Code duplication can be avoided up to 70% leading to better time market and lower maintenance cost. Rapid development timeline across platforms CONS Even if those solutions offer a free entry plan, there is often a cost associated to premium features. Hybrid Application Architecture – Web technologies Hybrid mobile applications are developed using standard web technologies and then packaged into a fully native application. Once packaged this application can be downloaded onto the device and function very similar to a native application. Apache Cordova is the most commonly used mobile development framework that provides the wrapper required for hybrid mobile applications to access device functionality. An advantage of this approach is that there is one single code base from which it is possible to produce several versions of your application for each target mobile platform. Here are some key considerations on hybrid mobile application development: PROS Built using standard web technologies Device agnostic client development Access to common device features Pre-built integrations with web services, data sources Rapid application development CONS Limited access to advanced device features UI not specific to a device type Sometimes a slower user experience. Summary Platform native application architecture is best suited for consumer applications and games that need to attract customers with rich UI, heavy graphics and animations and other device specific features. Code shared native application architecture in theory can achieve all the benefits of platform specific architecture with the additional advantage of needing a single skill set to develop. Hybrid architecture is best suited for applications that do not need rich UI, heavy graphics and animations. Previous Next Please enable JavaScript to view the comments powered by Google+. Loading Facebook Comments ... Please enable JavaScript to view the comments powered by Facebook. Recent Posts How to Deploy Docker Images Built on M1 Macs With Apple Silicon The Road to the Axway 2020 Sales Kickoff Booth Pin Create a Custom PCB Board For Eagle Cad In Photoshop in 5 Minutes SAO Instructions Amazon Alexa and Blynk Controlled Neopixel Matrix Recent Comments Archives April 2021 January 2020 October 2019 August 2019 June 2019 May 2019 September 2018 August 2018 April 2018 February 2018 December 2017 October 2017 August 2017 July 2017 June 2017 May 2017 April 2017 January 2017 August 2016 August 2014 July 2014 May 2014 April 2014 January 2014 October 2013 September 2013 August 2013 June 2013 January 2012 October 2010 July 2010 Categories Alexa Android API Builder Appcelerator ArrowDB Badge Basic Info Coding defcon docker Electronics Game Hacking iOS iOS Code Examples iPad iPhone Jasmine javascript Jenkins MBaas Mobile Backend Services Node react Watch Windows CE Meta Log in Entries RSS Comments RSS WordPress.org Copyright 2018 bitcows.com. Powered by WordPress.