- macOS の場合 - Visual Studio for Mac - https://visualstudio.microsoft.com/vs/mac/
- Windows の場合 - Visual Studio 2019(2017)
Android と iOS のネイティブアプリを Kotlin/Java, Swift/Objective-C で開発できる。
- C# について
- Xamarin.Android について
- Xamarin.iOS について
- Xamarin.Forms について
を一通りこなしてください。以下が理解できれば十分です。
- .NET は Windows でなくても動作すること
- C# の基本的なプログラミングモデル(Java よりモダン、Kotlin や Swift よりはやや古い)
- Task と async/await による非同期プログラミングモデル(Kotlin の coroutine, JavaScript の Promise と同義です)
を一通りこなしてください。以下が理解できれば十分です。
- Xamarin.Android は、 「Android の API が C# から呼び出せるラッパー である」ということ
を一通りこなしてください。以下が理解できれば十分です。
- Xamarin.iOS は、 「iOS の API が C# から呼び出せるラッパー である」ということ
を一通りこなしてください。以下が理解できれば十分です。
- Xamarin.Forms は、Xamarin.Android と Xamarin.iOS を利用している、ということ
- 画面の定義には主に XAML を使い、それはプラットフォーム間で共有できる、ということ
- 共通プロジェクトに記述したロジックはプラットフォーム間で共有できる、ということ
- .NET 製(.NET Standard準拠した)ライブラリがあれば、共通ロジックから呼び出せる、こと
- プラットフォーム毎に実装が必要な機能は、同一言語(C#)、同一IDE(Visual Studio) で記述できる(KotlinやSwiftなどの複数言語を行き来しなくてよいということ)、ということ
- 固有プラットフォーム向けのライブラリは、相互運用機能(Binding)を使って取り込める、ということ
- 共通側のインターフェースと、固有プラットフォーム側の実装を使って、複数のプラットフォームに対応したライブラリを作ることができる(Kotlin MPP と同じである)、ということ