-
Notifications
You must be signed in to change notification settings - Fork 0
MS_Xamarin
-
各種ネイティブ・アプリの開発が可能な SDK や IDE の開発ツール群の総称
-
もともと、
- Xamarin Studioで開発可能だったが、
- 2016年2月、Microsoft に買収され、
Visual Studioに無償で同梱された。
移行メモ(出自): Xamarin は Mono の開発者
Miguel de Icaza らが設立した会社の名前でもある。
Mono(.NET のクロスプラットフォーム実装)を土台に、
iOS / Android のネイティブ API を .NET から叩けるようにしたのが Xamarin である。
つまり「Mono の商用化」が出発点にある。
-
UWPと同様の理由で、あまり流行っていないように思う。
-
今後、主流は、「Visual Studio Code」+
「npm ,etc.の Node.js(JavaScript)系のツール」
になる可能性がある。 -
2020年 現在の
「ネイティブUI型 or 独自レンダラ型の
クロスプラットフォーム開発ツール」のトレンドは、- Xamarin が落ちて、Flutterと
React Nativeの2強になっている。 - Flutter の言語は、Java と似た文法を採用した
AltJS の Dart(JavaScript)
- Xamarin が落ちて、Flutterと
※ ≒ 予想したとおり。
開発環境の変遷
Android や iOS の API を .NET 向けにラップしている。
-
各Platform向けのUIサブシステムを用いて開発。
-
UIのコード共通化は出来ない。
- 「各PlatformのAPIの.NETラッパクラス」は提供されるが、
- UIサブシステムが異なるので、APIが異なる。
| 名称 | 対象 |
|---|---|
| Xamarin.iOS | iOS(旧 MonoTouch) |
| Xamarin.Android | Android(旧 Mono for Android) |
| Xamarin.Mac | macOS |
UIサブシステムを
-
XAML化(すると、流行らなくなる)
-
React Nativeと同じアプローチで、
共通の画面定義体から、各種プラットフォーム向けの画面を生成
している。
補足(最新化:Xamarin は終了した): 本ページの「落ちている」という
見立ては、その後サポート終了という形で決着した。
時期 出来事 2016-02 Microsoft が Xamarin を買収。Visual Studio に同梱・無償化 2022-05 .NET MAUI が正式リリース(Xamarin.Forms の後継) 2024-05-01 Xamarin のサポートが終了(Xamarin.Forms / Xamarin.iOS / Xamarin.Android すべて) 現在、.NET でモバイルを狙う場合の選択肢は
.NET MAUI 一択(あるいは .NET を離れて
Flutter / React Native)となっている。
既存の Xamarin アプリは .NET MAUI への移行が必要である
(名前空間の置換で済む部分も多いが、カスタム レンダラーは
ハンドラーへの書き直しが要る)。
-
Xamarin から .NET MAUI へのアップグレード
https://learn.microsoft.com/dotnet/maui/migration/ -
Xamarin support policy(サポート終了の告知)
https://dotnet.microsoft.com/platform/support/policy/xamarin
- インサイドXamarin
https://www.buildinsider.net/mobile/insidexamarin
-
Xamarin(ザマリン) とはなんぞや
https://qiita.com/amay077/items/38ee79b3e3e88cf751b9 -
Xamarin 最近どうよ?
https://qiita.com/amay077/items/399002a02c1abf9d620b
COCOA は、Xamarin で開発されている。
- COCOAの運用保守の難点について - Togetter
https://togetter.com/li/1664407
Tags: 移行, .NET開発, Mono, UIサブシステム, WPF/Silverlight, XAML
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。