There are lots of mobile app development technologies/frameworks available for the developers, but choosing a right technology for a particular project, is a very important criteria. It all depends on available development resources, type of app and it’s future development roadmap.
We have created matrix to help our customers to understand right app development technologies for their apps.
Scenarios |
Native Swift/Kotlin |
Overview |
Native platform support. Can harness true power of underlying platform |
Licensing and Company Involved |
iOS swift from apple/ Google for android |
Skill set required |
Swift for iOS/ Kotlin for android respectively with in-depth knowledge of underlying platform along with tools |
Feature Sets |
All Features support based on platform |
Development Efforts |
Highest development effort as app has to be developed and maintained sapaerately on each platform |
Shortcomings |
Huge development effort and maintainance |
Most appropriate scenarios |
Require platform specific user experience and performance. Suitable for Utility apps |
Scenarios |
React Native |
Overview |
Quick Iterative development process using Javascript as language on iOS and Android |
Licensing and Company Involved |
From Facebook. Licensing was BSD+ patents. Now it is MIT |
Skill set required |
Javascript with common tools for both iOS / Android |
Feature Sets |
Most advanced features provided via plugin. Can fallback on native |
Development Efforts |
Average dev effort as development is iterative and same code can be used on iOS / Android |
Shortcomings |
Performance can be an issue where lot of computations are required |
Most appropriate scenarios |
Required “Web-like” experience. Like Social media apps and e-commerce |
Scenarios |
Xamarin Forms |
Overview |
95% shared code among iOS and Android and server code if server is in C# |
Licensing and Company Involved |
From Microsoft. MIT and respective iOS and Android license |
Skill set required |
C# / XAML with common tools for both iOS / Android |
Feature Sets |
Most advanced features using plugins. Can fallback on native |
Development Efforts |
Very low dev effort as most code can be shared |
Shortcomings |
App performance on android at startup. Bulky app size |
Most appropriate scenarios |
Suitable for data input “forms-based” like enterprise apps |
Scenarios |
Native Xamarin |
Overview |
Native platform support. 60% shared code. The language is C# |
Licensing and Company Involved |
From Microsoft. MIT and respective iOS and android license |
Skill set required |
C# with Coomon tools for both iOS/ Android |
Feature Sets |
All features supported |
Development Efforts |
High dev effort. Most of the business logic can be shared yet the UI has be developed spaerately on Xamarin.iOS / Xamamrin.Android |
Shortcomings |
Developer needs to know all C#, android and iOS |
Most appropriate scenarios |
Enterprise apps where there is a workflow involving server and client side |
Scenarios |
Flutter |
Overview |
Quick iterative development process with native performance |
Licensing and Company Involved |
From Google |
Skill set required |
DART with common tools for both iOS / Android |
Feature Sets |
Still evolving as a platform |
Development Efforts |
Low dev effort as development is iterative |
Shortcomings |
Developer need to know Dart and it’s a very new new platform |
Most appropriate scenarios |
Require beautiful UI based on material like design out of box |
We hope that this article will be useful in choosing the right technology for your next app idea.