First, there were PCs and phones – then came the smartphones, tablets, smart TVs, game consoles, in-car devices and other smart devices. As the users of these devices demand access to the apps, the publishers will want to get their app in front of these target groups. Within these platform types there are multiple operating systems, versions and form factors to consider. The need for leveraging the software development effort across these targets has given rise to the cross platform tools. These tools allow for the write once – run anywhere code. The following discussion will help you understand some of these options and help drive the decision towards using a cross platform tool.
Types of Cross Platform Tools
Mobile applications can be developed as mobile web, native or hybrid applications. There are cross platform tools available for each of the different types of mobile application development.
Mobile Web Apps
Native applications are developed in a language and environment native to the target device. For example, Objective-C is used for iOS devices and Java for Android devices. These apps have access to the device hardware and can be published to their respective app stores. The native applications also have superior performance compared to the mobile web or hybrid applications. Xamarin, Telerik and RhoMobile provide tools to create cross platform native applications.
PhoneGap is the leader among the cross platform tools for hybrid applications. appMobi and Telerik’s AppBuilder are other examples of tools in this category.
The Need for Cross Platform Tools
There has been a growing trend towards developing native applications to conform to the native user interface and to improve performance. While the case for cross platform tools is best made for native applications targeting multiple devices, most of these arguments will hold true for the hybrid and mobile web application development as well.
Developing native applications requires disparate skill sets, often times not overlapping. This often requires enterprises to hire developers for a particular platform that is outside their core development competencies. Many cross platform tools predominantly leverage a single development technology such as .Net in case of Xamarin.
Code Reuse and Management
Lower Development and Maintenance Costs
As a result of shared codebase among the various platforms, it costs less to develop an application using a cross platform tool. As the application matures, it is easier to manger releases and is cheaper to develop new features and bug fixes.
The field of cross platform tools is evolving rapidly with new challengers entering the fray quite often. There are definitive benefits of going with a cross platform tool when targeting more than one platform, both in consumer and enterprise application space. Choosing the right development approach and cross platform tool is an exercise in optimizing for application’s functionality and user experience, the cost of tool and the cost of development and long term maintenance.