Android naportován do C# aneb Jde to i bez Javy

2

Android implicitně využívá jako programovací jazyk svých aplikací Javu, která je následně přeložená do mezikódu a nakonec interpretována virtuálním strojem Dalvik VM. Společnost Xamarin stojící za projektem Mono si však řekla, že to zkusí i jinak a přepsala Android tak, aby podporoval C#, překládal jej do CIL a následně po svém interpretoval.

Spolu s tím, také z Androidu kompletně odstranila Dalvik VM a veškerý javový kód. A světe div se, ono to fungovalo. Vznikl tak experimentální operační systém Xobot OS, který kromě syntaktických výhod C# přinesl také určité zlepšení výkonu při práci se strukturami a primitivními nehaldovými typy.

Vzhledem k velikosti zdrojového kódu Androidu byl k převodu použit automatický nástroj Sharpen, který velmi zjednodušeně upravil Javový kód tak, aby syntakticky seděl na standard C#.

Výsledný operační systém je samozřejmě víceméně nepoužitelný a je dobrý jen na nějaké to experimentování, nicméně podle slov tvůrců jim jeho vývoj ukázal jak výrazně vylepšit některé aspekty Mono touch pro Android, což v konečném důsledku oceníme všichni.

A nakonec jen taková zajímavost. I samotný Googlu v počátcích androida uvažoval o tom, že svůj vlastní mobilní operační systém postaví namísto na Javě na C# od Microsoftu. C# s .NET VM byl totiž oproti Javě standardizován ECMOu a navíc i kryt komunitním příslibem, že s ním související patenty nebudou nikdy vymáhány. Kdyby tedy nakonec zvolil C# a .NET, tak by se zřejmě vyhnull jakýmkoliv žalobám a nemusel by se teď strachovat soudního sporu s Oracle.

zdroj: blog.xamarin via rootcz

 

 

2 KOMENTÁŘE

  1. Jenom doplním, že Java se neinterpretuje ve VM ale používá tzv JIT kompilaci, tedy kód se kompiluje podle potřeby za běhu.

  2. „Výsledný operační systém je samozřejmě víceméně nepoužitelný a je dobrý jen na nějaké to experimentování“ … proč? Jen kvůli nedostatku aplikací nebo to má i jiné problémy?

Napsat komentář: Tester Zrušit odpověď

Please enter your comment!
Please enter your name here