アプリケーションフレームワークは建築物の様なもの。なるべく今の技術に適したモダンな物を選択したいところです。MVCやMVVM等の技術がありますが、当方のアプリケーションではMVVMパターンを採用しています。
MVVMパターンについていくつかライブラリが提供されており、利用していますが現在作成しているアプリケーションではMVVM Light Toolkit を利用しています。
しかし、この選択肢が現在では更新が止まっているらしいので.NetCore等で開発したい場合は対応していない為、他のライブラリを使う必要があります。そこで以下の候補が出てきました。
-
- Prism Library ドキュメントは元々Microsoft公式のフレームワークの為、普及率が高く日本語の本や解説サイトも多数あるため、選択候補になります。下記参考文献です。
- Livet 最初の作者は尾上さんという著名な日本の方になります。操作もしやすいとのことですが、Xamarin非対応とのことなので、マルチプラットフォーム対応はどうかという意見もあります。
最終的にPrismで落ち着くかと思いましたが、現在使用しているMVVM Light Toolkit にインスパイアされたライブラリでMicrosoft.Toolkit.Mvvmというライブラリがでており、上記作者も携わっているとのことです。WindowsCommunityToolkitでの開発ということで、コミュニティ主導でオープンソースとなります。名前規則がMicrosoft公式かと間違えてしまいそうですが、ベンチマークテストでもMVVM Light Toolkitに比べてメモリ利用が100分の1以下で実行速度も5~10倍以上という結果が出ているそうです。
UWPや.NETCore等に対応は必須なので今後の為に実際に置き換えていきたいと思います(興味があるので自分でライブラリの実装行うかも)。
取り敢えず組み込み直しの実装したらコードサンプルと共に改めてご紹介させて頂きます。