Journal of Computer Science


Joachim Perchat, Mikael Desertot and Sylvain Lecomte

DOI : 10.3844/jcssp.2014.2165.2181

Journal of Computer Science

Volume 10, Issue 11

Pages 2165-2181


There is a multitude of mobile OS: iOS android, Windows Phone 8 and each OS provides its own standards and tools. This heterogeneity in the mobile domain forces developers to implement an application for each mobile platform. To achieve that, developers need to master several languages (Java, Objective-C...). They also need to have several devices at their disposal (PC, Mac, many smartphones ...). Then, after applications distributions, developers have to maintain several source codes. In this study, we tackle this problematic. Our goal is to soften the differences between each OS in order to simplify the development of cross-platform third-party applications. To achieve that, we have defined a framework called COMMON (Component Oriented programming for Mobile Multi OsiNtegration). This framework allows the integration of cross-platform components in any application (iOS android). To run our components on any OS, we provide an implementation for each platform. However, to make their integrations easier, we also provide a common public interface of each component, which is platform-independent. Besides, we provide a common language, also platform-independent, allowing the integration and use of any component in any native application (iOS android). This language is based on annotations. Finally, we have implemented a cross-compiler, which translates the source code written with our language to native source code: Objective-C for iOS, Java for Android,... In this study, we have shown that our solution offers performance and memory consumption closed to native applications. Finally, with COMMON, mobile developers implement less lines of source code than with a native application. In your test application, we have saved 30%.


© 2014 Joachim Perchat, Mikael Desertot and Sylvain Lecomte. This is an open access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.