5

主にタブレットUIの開発を目的として、次世代ソフトウェアの開発にMvvmCrossを採用することを検討しています。MvvmCross が現在 WPF をサポートしていないことは理解していますが、私自身がそれを開発し、貢献していることがわかります。

ただし、 Prism ガイドで説明されているように、複合 UI のサポートがほとんどないという点で、MvvmCross は非常に軽量に見えることにも気付きました。残念ながら、より複雑な複合 UI シナリオを考慮する必要があります。

https://stackoverflow.com/questions/10224376/mvvmcross-experiences-hindsight-limitationsに記載されている、MvvmCross を参照としてフォークまたはローリングすることについて、および MvvmCross よりも複雑な UI シナリオが必要であることを考えると、 Prism の必要な部分をフォークして再実装するか、MvvmCross をそのまま Prism と連携させるか、MvvmCross と MonoCross のインスピレーションから独自に開発するか

4

1 に答える 1

6

更新:以下の2番目の回答を参照してください...


明日、これに対するより長い答えを書く必要があるかもしれません...

最初の答えとして:

  • 誰かが既に MvvmCross の Silverlight への移植を行っており、開発者はこれがより広いコミュニティで利用可能になる可能性があると示唆しています
  • MvvmCross の PCL バージョンは、WPF への移植が非常に簡単である必要がありますが、古い .Net ランタイム バージョンが必要な場合はそうではない可能性があります。
  • これまでの MvvmCross の主任開発者として、私は WPF のサポートに個人的に興味を持っています。特に現在、私のプロジェクトhttp://github.com/slodge/BallControlでは、デスクトップを実行する必要があります (Windows ストアは機能していません。 )
  • 複合 UI は MvvmCross でサポートされています (例: タブ、ピボット、パノラマ、スプリット、モーダルの子など)。ただし、Prism でよく見られるような完全な複合 UI についてはまだ多くの作業が行われていません。
  • 私は人々が MvvmCross を他の IoC フレームワークと組み合わせているのを見てきましたが、(私が知っている作業はありません) MvvmCross と MEF (Prism でよく使用されますか?)

この問題領域に取り組んでいるとしたら、次のようになります。

  1. アプリはフレームワークよりも重要です。
  2. フレームワークについては、基本的な IoC セットアップを最初のいくつかの簡単なナビゲーションに移植してみます
  3. カスタム ナビゲーション (領域に UI を表示するため) については、MvvmCross でのプレゼンターの役割を調べます。これは、複雑な UI 機能を提供するために、タブの例、iPad の分割ビューの例などで使用するものです。
  4. このカスタム ナビゲーションが十分でない場合は、それがどのように変更/置換/拡張されるかを検討します。私の推測では、WPF/Prism の実際の要件は、より大きな iPad、Surface、Nexus の実際の要件と非常に似ていると思います。タブレット アプリ。
  5. 小さな電話アプリが、大きなアプリが必要とするかもしれない大きなナビゲーション プロセスを取り込まなくて済むように、すべてをモジュール化してオプションにしておくようにしています。これの欠点は、多くのプロジェクトと DLL になる可能性があります。
  6. 私はまた、この別々のプロジェクトへの分割に対してオープンです。現代のソフトウェアの世界の多くは、より大きく無秩序に広がるフレームワークではなく、ターゲットを絞った小さなアプリによって支配されています。
  7. 私は Mvx のパートタイムであり、これはあなたのフルタイムの仕事です。

私の最初の反応は、「はい、これに取り組むことに本当に興味があります」です - 欠点 (上記のように) は、mvx の空き時間しかないことです....


これが2番目の答えです...

  • MvvmCross の WinRT バージョンをベースにしました (ただし、Console、WP7、Touch、Droid の要素も使用しました)。
  • MvvmCross のシンプルな WPF バージョンを作成しました - https://github.com/slodge/MvvmCross/tree/vnext/Cirrious/Cirrious.MvvmCross.Wpf
  • このバージョンの主な機能は、ナビゲーションの方法があまり含まれていないことです
    • たとえば、Back! に電話しないでください。
    • presenterたとえば、アプリケーション UI を実装するために、メインは抽象のままです


この動作のビデオがあります - http://youtu.be/pYkLxqpu_5Eにいくつかの説明があります。


これは明らかに Wpf サポートの最初のステップにすぎませんが、すでにかなりの数のユース ケースを満たしているのではないかと思います...ソース ツリーをフォークして、この最初の試みを拡張または置換してください。また、それがうまくいかない場合は、遠慮なくそれを放棄して、代わりに何かを試してください.

私はこれにもっと取り組もうとします-しかし、有給の仕事よりも優先することはできません...しかし、私はmvvmcrossで働くために有給を受けることにもオープンです:)

于 2012-12-13T16:50:02.827 に答える