Wired for experience®

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 provides set of APIs to access device capabilities.

Xamarin vs Cordova vs WaveMaker

Two of the most popular 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
Mono .NET, C# based solution for cross-platform mobile. But, you still need to know Objective C or JavaHTML5, CSS3 & JavaScriptBasics 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 platformBrowser based RAD Studio, for building apps for any platform. Cordova-based
SDK installation and regular maintenance upgrades need to be done for developmentSDK installation is required only for building installerNo 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 10App source code is independent of the platformSingle app source to support multiple platforms
Xamarin Forms makes re-usability of code and components. However 30% of code still needs to be natively implementedNeed to find right frameworks around Cordova for re-usable components or build on your ownWaveMaker widget Library offers wide range of integrated UI/data components like Forms, Lists, Grid, Filter etc.
Native look-n-feelNeed to build for each platformLook-n-feel for each platform taken care of by themes

Architecture and Deployment

Supports MVC or MVVM pattern for app developmentNeed to find the right frameworkMVC framework
Mono .Net / C# based multi platform frameworkHTML5, Javascript based cross-platform frameworkHTML5, Angular, Cordova-based application & Java backend
Separate apps need to be built for each platform with their own UIOnly one app need to be built for all platformsOnly one app need to be built for all platforms
Native widgets for each platformHTML widgets onlyHTML 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 deploymentOpen source framework, no specific vendor lock-inOpen standards based code, no vendor lock-in
Xamarin has TestCloud to test appsNo Test Cloud platformWaveMaker platform has single-click cloud deployment platform & UI testing capabilities using WaveLens app
Mobile builds on developer machineEither build on developer machine using SDKs or use PhoneGap build serviceSingle-click build service for Android and integration with PhoneGap build service
Native performancePerformance is based on browser capabilitiesWidgets are optimized for better performance on browser capabilities
platform as a service

Other Details

Steep learning curve for Enterprise IT development team. Learn Xamarin codebase and platform-specific programmingAny web developer can be trained to build mobile interface using CordovaRequires learning the RAD platform, with understanding of web development skills
High maintenance to keep up with platform upgrades and for each platformLow maintenance because of cross-platform. But, plugins need to be upgraded if platform compatibility is not metPlatform 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 choiceWaveMaker Studio is WYSIWYG browser based development environment
Integration with code repository for collaborationNo integrated development environmentOut-of-the-box collaboration & version control based on Git/SVN etc.
Extensions can be added through components & pluginsCordova pluginsWaveMaker prefabs for building service/API integrated UI Components