MvvmCrossの情報

2018/01/30

Xamarin

Xamarin は、C# で iOS、Android、Windows、Mac OS のアプリケーションを開発できるクロス プラットフォーム開発環境だ。

ネイティブにアプリケーションを書けるのを特長としており、それぞれのプラットフォーム用のコードを C# で記述できる。

その為、特化した部分はプラットフォーム毎に別個に書く必要があり、複数のプラットフォームで動作するアプリケーションを効率よく書く為には、いかにコードを共通化するか、が重要となる。

Xamarin は、PCL (Portable Class Library: 複数のプラットフォームに対応可能な .NET Framework のクラス ライブラリ) に対応しており、ここにできるだけ多くのコードを集めたい。 その為には、MVVM (Model-View-ViewModel) パターンで Model と ViewModel の部分を PCL において共通化し、なるべく View の薄い部分だけを個々に記述するようにしたいものだ。 画面の記述は、プラットフォームによって異なるので、個々の画面の記述をできるだけ薄くし、内部処理等を切り離して共通化する訳だ。

Xamarin から利用できる MVVM フレームワーク "MvvmCross" 関連の情報を集めてみた。

  • MvvmCross の紹介
    • N plus 1 Videos Of MvvmCross · MvvmCross/MvvmCross Wiki
    • Xamarin - マルチプラットフォーム MVVMフレームワーク「MvvmCross」を使う - Qiita
    • MvvmCross と Xamarin for Visual Studio で iOS, Android, Windows アプリを作る流れ - Yuta Watanabes Blog
    • Xamarin を使って iOS, Android, Windows ストアアプリを効率的に開発する! - デベロッパーズブログ- フェンリル
    • Cross platform development with Xamarin 2.0 + MvvmCross 伊勢 シン, Room metro #23 (2014.03.01) - slideshare
    • Xamarin+MvvmCrossでAndroidもデータバィンディング - 眠るシーラカンスと水底のプログラマー
    • Xamarin+MvvmCrossでiPhoneもデータバィンディング - 眠るシーラカンスと水底のプログラマー
    • 主にストアアプリが作りたい!! しかも iOS とか Android アプリとかも作りたい!! Makoto Nishimura, Hokuriku.NET #13 (2014.01.25) - slideshare
  • MvvmCross のインストール
    • Xamarin Studio に NuGet で MvvmCross をインストールする - Yuta Watanabes Blog
    • MvvmCross で使うコード スニペットを Visual Studio に追加する - Yuta Watanabes Blog
    • Xamarin+MvvmCrossでアプリ開発をはじめる準備 2014年3月版 - Qiita
    • Xamarin StudioでNuGetを使う - 三角Validator
    • PCL and .NET NuGet Libraries are now enabled for Xamarin - .NET Blog - MSDN Blogs
  • MvvmCross 以外のクロスプラットフォーム MVVM フレームワーク
    • MvvmCross だけじゃない!クロスプラットフォーム MVVM フレームワーク「QuickCross」を試す - Qiita
    • MVVM フレームワーク「ReactiveUI」を Xamarin.iOS で使ってみる - Qiita
  • 関連情報
    • PCL and .NET NuGet Libraries are now enabled for Xamarin - .NET Blog - MSDN Blogs