TopKotlinはAndroidの開発言語として非常に有名になりました。その仕組みはKotlinコードをJavaのbytecodeにコンパイルすることで、JVMとの互換環境(Dalvik/ART)で動作できるようにしています。C#でAndroidの開発と言えば、Xamarinが有名でしょう。XamarinはAndroidにmonoランタイムと言われるC#の実行環境をapkごとに搭載させます。そのため、どんなに圧縮しても多少なりともapkサイズはNative言語(Java/Kotlin)で書いた時より増えますが、その分monoランタイムの恩恵(C#)を得ることができます。Xamarin.AndroidはAndroidのAPIを薄くラップしたもので、開発者はAndroidのアプリをAndroidとほとんど同じ感覚でC#を使い開発することができます。開発言語がC#になるだけと言うことができますが、C#を用いることでクロスプラットフォームな開発ができたり、JVM言語にはない非常に強力な言語機能を使うことができます。Javaでの高速化には限界があります。VMを使っているから遅いというのはありますが、それ以前にJavaにはポインターと構造体はありません。ポインターは危険な機能なので安易に使うものではありませんが、そもそもポインターという機能がないため、Android-Javaでは高速化しようと思えばNDKを用いてC/C++を使う必要がありました。C#にはポインターと構造体はもちろん、ポインターを安全かつ簡単にした参照(ref)という機能があります。C#開発者は比較的安全に・簡単に高速なプログラムを作ることができるのです。話がそれてしまいましたが、XamarinにはXamarin.Android以外にXamarin.Formsというものがあります。Xamarin.FormsはXamarin.AndroidのAPIを濃くラップしたもので、View層も含めてクロスプラットフォームな開発ができるフレームワークです。APIを知っている開発者ならXamarin.AndroidでAndroidアプリを開発することをお勧めします。meil.スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。