モバイルアプリケーションの一部のみを使用するWM 6.x開発のコミュニティリリースをブロックする
-
28-10-2019 - |
質問
私は、非常によく似たユースケースのシナリオで異なるタイプのさまざまなデバイスをサポートする必要があるビジネス分散システムのラインのアーキテクチャを計画するプロセスにあります。
とりわけ、サポートする必要があります
- Windows Mobile 6.xベースのPDA
- PCワークステーション
これらのアプリは非常にシンプルなビジネスロジックを提供するため、誇張されたアーキテクチャを使用したくありません。それでも、私はサポートする必要があります:
- リモートアップデート
- PDAのほとんど切断されたクライアントシナリオ(およびオプションでは、PCの)
適切な参照アーキテクチャを調査している間、私はつまずきました モバイルアプリケーションはコミュニティのリリースをブロックします と モバイル貢献 そのリリースの拡張。私が興味を持っていたのは次のとおりです。
- 切断されたエージェントと接続モニターは、ほとんど切断されたクライアントシナリオをサポートするために
- 更新をサポートするモバイルアップデーターアプリケーションブロック
私もそれを知っています SCSF デスクトッププラットフォームのカウンターパート。
さて、ここに私の質問があります
- あなたの経験では、VS2008/WM6.x/.NET CFへのMCSF拡張は、生産の使用に十分な成熟と安定していますか?私は、私がプロジェクトの真ん中にいる間、それがビジネスでの使用に本当に適していないことを知ることの犠牲者にならないとは限りません。
- アプリケーションは非常に簡単になるので、MVPパターンやその他のCAB関連のフレームワークの追加を過度に複雑にしたくありません。上記のシナリオをサポートする必要があります。 MCSFコミュニティリリースコンポーネントをMCSFの方法で(コマンド、依存噴射、MVPなど)アーキテクトアプリケーションすることなく使用することは可能ですか?簡単なアプリケーションのためにシンプルにしたいと思います。
- デスクトップPCアプリについても同じです。また、ここでは完全なCAB/SCSFを使用することは、実装される非常にシンプルな機能セットであるため、ここでは大きな過剰になると思いますが、アップデーターと場合によっては切断されたものを利用して開発時間を削減したいと思います。クライアントブロック。複雑なUIパートがないだけです(UI用のプレーンウィンフォームを作成します)。それは可能でしょうか?
また、PCとPDAの間で切断されたクライアント/リモートアップデートに関連するコードの一部を共有する可能性を調査していますが、MCSF/SCSFではそれが不可能だとは思いません。
私の前にその道を下った人からのアドバイスを感謝します:)
解決
MCSFは絶対に恐ろしいです。 Microsoftの誰かが、SCSFを取得し、コンパクトフレームワークで「機能させる」ことをほとんど経験していない開発者に語ったようです。それは「コンパイルされていれば、それは問題ない」と翻訳されました。
実行しますか?確かに、しかし聖なる遅いバットマン!現実世界のシナリオでは完全に使用できません。それは十分に悪いです 私はゼロから代替品を書きました これには、(ほとんどの)インターフェイスの互換性を維持し、最小限の機能セットのみが含まれます。
アプリに2つ以上のビューが含まれている場合、MVPパターンを使用する価値があることがわかりました。ある時点で、別のビューを追加する必要がありますが、すでにアーキテクチャ化されています。また、オブジェクトをDI/IOCフレームワークに入れると、イベントの集約などが可能になります。これは、ヘッドレスアプリケーションでもひどく便利だと思うため、MVP Gooがなくても使用します。
デスクトップは私の本でも違いはありません。私が作成したIOCライブラリは、プラットフォーム間で多くのコード共有を行っているため、CFとFFXの両方(およびMonotouchとPhone 7)を同じようにサポートしています。使用しないデスクトッププロジェクトを作成することはまれです。
今、私はあなたが私のIOCプロジェクトを使用しなければならないと言っているわけではありません。私がヒットしたすべての問題に役立つと思うので、機能の欠落している領域にぶつかったときにすぐに追加できるほど十分に知っています(数か月ではあまり欠けていませんが)。快適であるか、別のDI/IOCフレームワークを好む場合は、それを使用してください。私が言っているのは、a)MCSFに関係していることから離れて叫んでb)DI/IOCフレームワークを使用することです。それはそれから利益を得るには簡単すぎます。