Xamarinで開発を行っていくにあたり、せっかくXAMLを使うのでMVVMパターンで開発を行っていきたいと思います。
MVVMに関しては今回は割愛します。リンクで勘弁してください。
MVVMパターンの出現はもう10年以上前のことになりますが、WPFやUWP、Xamarinの投稿記事でさえもコードビハインドが引っかかるほど浸透していません。
それほど浸透していない理由の一つがMVVMの『データバインディング』という技術です。
これまで主流だったWindowsフォームでは、GUIでコントロールをダブルクリックすればその処理に紐づいたイベントハンドラーが自動で生成され、コントロールへの入力値も直感的に取得することが出来ました。
MVVMパターンでの開発では、これまでイベントハンドラを記載してきた(Windowsフォームで言えば)form.csファイルにはコンストラクタの中に1行しか処理が入りません。
これまでコントロール名.textで取得してきた値はプロパティ名と紐づけされます。
中身はこれ以上深堀しませんが、そうした取っつきにくい技術での開発を簡単にしてくれるフレームワークが提供されています。
現在の案件を除いてもWPF、UWPを経験し、Livetでの開発も行ってきましたが今回は案件と合わせて『Prism』を使用してXamarin開発を行っていきたいと思います。
『Prism』のインストール
Visual Studioの上部メニューバーより「ツール」⇒「拡張機能と更新プログラム」を開きます。
右上の検索フォームに「prism」と入力すると「Prism Template Pack」が最上位に表示されると思うので、「ダウンロード」をクリックします。
ダウンロード完了後、Visual Studioの再起動が必要になりますので、一旦Visual Studioを閉じます。
再度Visual Studioを起動すると、『Prism』のインストーラーが起動するので、「変更」をクリックします。
インストール完了後、「閉じる」クリックでVisual Studioが立ち上がります。
『Prism』のテンプレートプロジェクトの作成
Visual Studio起動後、上部のメニューバーから「ファイル」⇒「新規作成」⇒「プロジェクト」を開くと左側のリストに『Prism』が追加されていますので、「Prism Blank App」を選択し、「OK」をクリックします。
作成するプラットフォームとコンテナの選択画面が開くので、今回はそれぞれAndroidとUnityを選択してプロジェクトを作成します。
作成されたプロジェクトの構成がMVVMに準拠した構成になっています。
PCのスペックによってはフォルダ1個切るのも大変な場合があるので、ありがたいですね。
Welcome to Xamarin.Forms and Prism!
プロジェクトを作成したところで、お馴染みの初回起動です。
今回はAndroidのみのプロジェクトを作成したので、スタートアッププロジェクトをAndroidに設定し、実行します。
下記の画面が起動できれば『Prism』の導入及び起動確認が完了です。
これでひとまずの開発環境が整いましたが、次回はもう少しだけ寄り道します。
その他参考リンク
- WPF の概要(Microsoft)
- ユニバーサル Windows プラットフォーム (UWP) アプリとは(Microsoft)
- [C#][.NET][WPF] WPFと関連知識まとめ ←内容濃いです。
スポンサーリンク