November 27, 2020

Alternative to Xamarin and Cordova

Comparison of WaveMaker with Xamarin and Cordova

Mobile has swiftly risen to become the leading digital platform. What started in the consumer space has now also engulfed Enterprises. Every application within Enterprises that is being redesigned, recreated or freshly created starts with a Mobile initiative today.

While a native app provides the best user experience, developing native apps is a costly affair. It requires developing the application on each device separately and requires highly skilled developers who can code in Objective-C/Swift for iOS, and/or Java for Android devices. Many enterprises want to balance the need for great user experience with simplicity and speed of developing the application. This is where hybrid mobile apps come in. With hybrid mobile app development, businesses can create apps using a single code base that can adapt to any mobile operating system.

Did you know that by 2016 more than half the mobile apps deployed will be hybrid?

Hybrid mobile apps are built with a combination of web technologies like HTML5, CSS, and JavaScript using frameworks that provide a set of APIs to access device capabilities.

Xamarin vs Cordova vs WaveMaker

Two of the most popular Low-code mobile app development frameworks are Apache Cordova and Microsoft’s Xamarin. However, both of these frameworks have their shortcomings. So, how do you choose the best framework to deliver mobile apps for your enterprise? Here we provide a detailed comparison of the Cordova, Xamarin and WaveMaker to help you choose the right platform for your mobile app delivery needs.


Development and Testing

Xamarin Cordova WaveMaker
Mono .NET, C# based solution for cross-platform mobile. But, you still need to know Objective C or Java HTML5, CSS3 & JavaScript Basics of JavaScript syntax
Need platform-specific development environments for building apps. Mac for IOS, Windows for Windows Mobile etc. Development can be done on any platform Browser based RAD Studio, for building apps for any platform. Cordova-based
SDK installation and regular maintenance upgrades need to be done for development SDK installation is required only for building installer No SDK installation required for development and testing
For testing device features, use emulator or build mobile installer for the respective platforms, Mac, Windows etc. For testing device features, use emulator or build mobile installer for the respective platforms, Mac, Windows etc. WaveLens app can be installed on specific device you wish to test. No need to build platform-specific mobile installer for testing
App’s source code is tightly coupled with the Mobile platform version e.g. Android 5.0 (lollipop) or 6.0 (Marshmallow), IOS 9 or 10 App source code is independent of the platform Single app source to support multiple platforms
Xamarin Forms makes re-usability of code and components. However 30% of code still needs to be natively implemented Need to find right frameworks around Cordova for re-usable components or build on your own WaveMaker widget Library offers wide range of integrated UI/data components like Forms, Lists, Grid, Filter etc.
Native look-n-feel Need to build for each platform Look-n-feel for each platform taken care of by themes


Architecture and Deployment

Xamarin Cordova WaveMaker
Supports MVC or MVVM pattern for app development Need to find the right framework MVC framework
Mono .Net / C# based multi platform framework HTML5, Javascript based cross-platform framework HTML5, Angular, Cordova-based application & Java backend
Separate apps need to be built for each platform with their own UI Only one app need to be built for all platforms Only one app need to be built for all platforms
Native widgets for each platform HTML widgets only HTML widgets, customized with native look-n-feel for each platform
Need to rely on Microsoft Technologies for deploying backend Services, higher TCO for development and deployment Open source framework, no specific vendor lock-in Open standards based code, no vendor lock-in
Xamarin has TestCloud to test apps No Test Cloud platform WaveMaker platform has single-click cloud deployment platform & UI testing capabilities using WaveLens app
Mobile builds on developer machine Either build on developer machine using SDKs or use PhoneGap build service Single-click build service for Android and integration with PhoneGap build service
Native performance Performance is based on browser capabilities Widgets are optimized for better performance on browser capabilities


Other Details

Xamarin Cordova WaveMaker
Steep learning curve for Enterprise IT development team. Learn Xamarin codebase and platform-specific programming Any web developer can be trained to build mobile interface using Cordova Requires learning the RAD platform, with understanding of web development skills
High maintenance to keep up with platform upgrades and for each platform Low maintenance because of cross-platform. But, plugins need to be upgraded if platform compatibility is not met Platform takes care of upgrading the plugins, and also migration of applications to take care of backward compatibility
Visual Studio has integrated development environment for building apps, visual designer etc. No specific development IDE, developers could use Eclipse, IDEA or any other Java/Javascript based IDE of their choice WaveMaker Studio is WYSIWYG browser based development environment
Integration with code repository for collaboration No integrated development environment Out-of-the-box collaboration & version control based on Git/SVN etc.
Extensions can be added through components & plugins Cordova plugins WaveMaker prefabs for building service/API integrated UI Components