Cordova

Photo by Michael Weidemann / Unsplash

Rapid Mobile Application Development

Providing access to business processes from mobile devices is critical in today’s fast-paced corporate world. In fact, many companies are moving toward a “mobile first” strategy when building applications. The traditional approach to meeting the mobile need has been to develop mobile applications using platform-specific native code. This leads to inefficient development practices entailing duplication of effort to support a variety of devices and platforms, as well as cultivating skill in multiple programming languages. Apache Cordova is an open source mobile development framework that streamlines and simplifies building of mobile applications that target multiple platforms.

Cordova is a set of device APIs that enables the developer to build mobile applications that can take advantage of native device features using web technologies (HTML, CSS and JavaScript). Writing applications with the Cordova APIs doesn’t require knowledge of native code such as Java or Objective-C and enables companies to develop mobile applications in a much more cost-effective manner. These hybrid mobile applications run locally on the device using the device’s browser engine and use the Cordova APIs to access device functions such as the camera or accelerometer. There are also third-party plugins available to use in Cordova applications to further extend the API functionality. If a plugin isn’t available for a device platform, it can be written using native code; this doesn’t completely eliminate the need for skill in native code, but it does isolate it to just development of plugins.

Since the Cordova JavaScript APIs are consistent across multiple device platforms, the applications can be ported to other platforms with only minimal changes. Because Cordova applications run on the mobile device, access to them can be provided through an app store. JavaScript frameworks such as jQuery Mobile, Dojo Mobile, Sencha Touch and Kendo UI can be easily integrated with Cordova applications to provide a robust set of widgets that will enhance the usability and appearance of hybrid mobile applications.

Hybrid mobile applications are more versatile than native apps in that they are cross-platform. Mobile apps have two advantages over mobile web apps: they can access device APIs, and they are usable when the device is offline. One limitation of hybrid apps as compared to native apps is that their graphics performance won’t be as fast since the app runs in a container, but this is not a substantial consideration for the majority of business applications.

Apache Cordova development can be performed using IDEs such as Eclipse and Xcode. Use of the Cordova framework has also been integrated into IDEs from major companies. IBM adopted the use of Cordova in their Worklight product which makes use of Cordova to build hybrid mobile applications. Microsoft announced on May 12, 2014 at their TechEd conference that they’re planning to add support for Apache Cordova to Visual Studio. Telerik’s AppBuilder solution also makes use of Cordova.

Apache Cordova applications are your company’s best option for supporting multiple mobile platforms and leveraging web skills while maintaining a single code base with easy update distribution.

Nick Laughton

Nick Laughton