私は、基幹業務の分散システムのアーキテクチャを計画しているところです。このアーキテクチャでは、非常によく似たユースケースのシナリオで、さまざまなタイプのさまざまなデバイスをサポートする必要があります。
とりわけ、私はサポートする必要があります
- WindowsMobile6.xベースのPDA
- PCワークステーション
これらのアプリは非常に単純なビジネスロジックを提供するので、誇張されたアーキテクチャを使用したくありません。それでも、私はサポートする必要があります:
- リモートアップデート
- PDA(およびオプションでPC)のほとんどが切断されたクライアントのシナリオ
適切な参照アーキテクチャを調査しているときに、モバイルアプリケーションブロックのコミュニティリリースとそのリリースへのモバイルコントリビュート拡張機能に出くわしました。私が興味を持ったのは次のとおりです。
- ほとんど切断されたクライアントのシナリオをサポートするための切断されたエージェントと接続モニター
- アップデートをサポートするモバイルアップデータアプリケーションブロック
デスクトッププラットフォームに対応するSCSFも知っています。
さて、ここに私の質問があります
- あなたの経験では、VS2008 / WM6.x / .NET CF 3.5へのMCSF拡張は成熟しており、本番環境で使用するのに十分安定していますか?プロジェクトの最中は、ビジネスでの使用にはあまり適していないことを知って犠牲になりたくありません。
- アプリケーションは非常に簡単なので、MVPパターンやその他のCAB関連のフレームワークの追加で過度に複雑にしたくありません。上記のシナリオをサポートする必要があります。アプリケーション全体をMCSF方式(コマンド、依存性注入、MVPなど)で設計しなくても、MCSFコミュニティリリースコンポーネントを使用することは可能でしょうか?シンプルなアプリケーションのためにシンプルにしたいと思います。
- デスクトップPCアプリについても同じです。また、完全なCAB / SCSFを使用することは、実装する機能の非常に単純なセットであるため、ここでは大きなやり過ぎになると思いますが、アップデーターと、場合によっては切断された機能を利用して、開発時間を短縮したいと思います。クライアントブロック。複雑なUI部分がないだけです(UI用のプレーンなWinFormを作成します)。それは可能でしょうか?
また、切断されたクライアント/リモートアップデートに関連するコードの一部をPCとPDAの間で共有する可能性についても調査していますが、MCSF/SCSFではそれが可能ではないと思います。
私の前にその道を進んだ誰かからのアドバイスをいただければ幸いです:)