2011-12-22 5 views
1

私はWindows Mobile 6.xとバージョン7用のアプリケーションを開発しなければならず、私のスキルセットは.netとWebベースです。バージョン7は下位互換性がないので、私は多くの重複した作業に終わると思っています。Windows Phone 7とWindows Mobile 6.x用に同じアプリケーションを開発することは可能ですか?

私はRhomobileとPhonegapを見ましたが、後者はWindows Mobile 6.xをサポートしておらず、前者はルビー知識を必要とします。

可能な限り多くのロジックをクラスライブラリに持たせてから、クラスをプロジェクトに組み込み、特定のプラットフォーム用にコンパイルできるようにしました。その場合、多くの#if PHONE7スタイルロジックで終わる可能性があり、ユーザーインターフェイスコードも各プラットフォームに実装する必要があります。

この問題を解決する最も効率的な方法は何ですか?

答えて

2

ロジックからUIを分離することができれば、マルチターゲットを開始できます。もう1つの考慮事項は、電話機の実行時間(Silverlight 4?)と電話サンドボックスの制限事項です。

MVVMライトが多標的で、オープンソースである、あなたは、彼らはそれに取り組んでどのように確認するためにこれを使用することもできます。要するに

http://mvvmlight.codeplex.com/SourceControl/changeset/view/d546dc69fffd

をしかし、あなたの「リンクとして追加」のアイデアはかなりありますそれに基づいて。

その他の質問は、アプリケーションが両方のプラットフォームに適合するかどうかです。モバイルからメトロへの使用スタイルは大きな変化です。人々は物事が特定の方法で行動し、地下鉄で特定の方法を見ることを期待しています。これをUIに限定し、可能な限り多くのロジックを移動させることができれば、あなたは大丈夫です。しかし、共有する価値がないという点があります。単純に複製する方が簡単です。

申し訳ありませんが、この回答の詳細が不足しています。正直なところ、アプリの種類は多岐にわたります。リンクされたコードファイルとハッシュ定義の組み合わせを使用して、私は個別のアプリケーションとリファクタリングから個人的には共通点が現れるようになります。

かわいいトリック...あなたはいつもクラスは、部分的にし、各ハッシュのための部分的なコードファイルを定義することができます:

MyBusinessClass.CF.cs 
MyBusinessClass.Silverlight.cs