SOFTWARE DEVELOPER Xamarin has ported Android's source code from Java over to C#.
Xamarin, which develops the Mono implementation of C# for use in mobile devices, has ported Google's Android source code over to C#. The firm claims performance has improved with absolutely no Java involvement, meaning Oracle's minor disagreement with Google over Java could become a moot point if Google decide to move to C#.
According to Xamarin, Google's Java Android code was translated using Sharpen, with the development team working on improvements on the tool before it could be used for Xamarin's purposes. The firm says it has managed to port Android 4.0 to C#, meaning it is on the bleeding edge.
Perhaps most impressive are Xamarin's performance claims for its Mono virtual machine compared to Google's Dalvik used in Android. The firm used HTC Flyer and Acer Iconia Tab tablets to benchmark the C# port of Android through Mono against Java Dalvik, with the C# implementation of Android well and truly trouncing the Java-based Dalvik.
Microsoft's C# programming language has been running on Linux for a number of years through Mono and while few see Microsoft as being any more benevolent than Oracle, the firm has said it won't sue anyone for using C# outside of its blessed operating system. The survival of Xamarin's Mono for such a long time might be seen as a testament to the truth of that.
Xamarin's port of Android to C# isn't complete and the firm said it still needs to implement direct graphics access and port more of the Java code to C#. However the firm's performance figures are very impressive and certainly should give Oracle something to think about when it comes to promoting Java as a viable choice for any company - especially Google - to implement high performance software. µ
Next-gen devices enabled by integrating novel materials on silicon
Plus there's a new way to read comics in town
Find out which six games have most impressed us so far this year
Video shows off upcoming handset in Rose Gold compared to iPhone 6S predecessor