Windows Mobile 6.5 を .NET Compact Framework 3.5 SP1 (Visual Studio 2008) と共に使用する予定の場合、最も一般的な方法は Windows フォーム (コンパクト) を使用することです。C++ の使用を計画している場合は、C++ のベスト プラクティスがわからないため、この回答の残りの部分は無視してかまいません。
.NET CF 用の Windows フォームは、完全なフレームワークの Windows フォームに似ていますが、機能とすぐに使用できるツールがはるかに制限されています。従来の Windows Mobile プラットフォームですぐに利用できる WPF/Silverlight/MVVM オプションは実際にはありませんが、勇気がある場合は、独自の MVVM タイプ フレームワークを展開することを試みることができますが、MVVM は WPF でより適切に機能するため、おそらくお勧めしません。または Silverlight であり、Windows フォームやその他のオプションにはマップされない場合があります。
.NET CF Windows フォーム用の MVC や MVP の例、または基本的なフレームワークはいくつかありますが、完全な機能を備えたものは見たことがありません。Microsoft の Patterns & Practices チームが提供する Windows Mobile 用の「Smart Client Software Factory」を試すこともできますが、非常に複雑になる可能性があるため、そのルートに進むかどうかはわかりません。Google で「Windows Mobile MVC または MVP」を検索します。多くの場合、MVC/MVP の例では 1 つの画面しか表示されないため、作成者がアプリケーションの画面遷移やグローバル イベントなどをどのように処理するつもりなのかわかりません。
MVP は Windows フォームでうまく機能するため、MVC よりも MVP パターンをお勧めします。非常に慎重に行わない限り、MVC は Forms で少し扱いにくい場合があります。これは、.NET CF で MVP を使用した Compact Framework 上のマルチスクリーン アプリで私が見つけた最良の例です。
https://github.com/derickbailey/appcontroller.cf
これは、IoC や UI イベント集約などの最新のベスト プラクティスを使用しているため、好例です。この例のもう 1 つの利点は、優れた単体テストと UI 開発の優れたプラクティスの準備が整うことです。