2011-06-27 3 views
0

Windows Mobile 7から起動し、Android、iPhone、BBなどの他のプラットフォームにアプリケーションを変換する必要があります。複数のOSのためのモバイルアプリケーションソリューションアーキテクチャ - Windows Phone 7、Android、iPhone、BB

アプリケーションには多くの画面が含まれており、すべてのデータはローカルストレージに格納され、最終的に中央サーバーに渡されます。

アーキテクチャをどのように設計する必要があるのか​​、また、共通のWebサービスから離れて他のプラットフォーム用に開発した場合に共通する必要があることを知りたいと思います。

事前に感謝

+0

@rajit WP7アプリケーション用のMVVMアーキテクチャを使い始めると、別のレイヤー間で適切なSoCを維持できます。 – softwaredeveloper

+0

それはWebアプリケーション(html)またはネイティブですか? –

+0

@lukas - ネイティブアプリケーション開発 – rajt

答えて

2

まず第一にどこでもあなたを得るために起こっている何の1つの解決策はありません。 PhoneGapのようなものを使うことができます(これはWP7では利用できません.Mangoの後までは到着しません)。それは一つの方法です..私はあなたがネイティブの経験で完全なものよりも少ないものを得ると思う。

あなたが使うことができるものは、iOSでC#を手に入れるMonotouchとAndroid(それはお金がかかる、BTW)です。これによりBBも除外されるため、完全に実行可能なソリューションではない可能性があります。

あなたが取ることができるアプローチを考えてみましょう。

アプリは、ビジネス/ドメインタイプのクラスとUIクラスの2つの領域に分類されます。 (ここでは、最初にサーバーからデータを取得し、ユーザーから追加のデータを収集し、最終的にサーバーと同期をとると仮定します)。あなたは、ビジネス/ドメインのクラスについて長く考えておく必要があります。 WP7(あなたの最初のプラットフォーム)に組み込まれているあらゆるメトロニズムに頼らないような方法でそれらを望みます。これらのクラスは実際に何かを継承するべきではありません。POCOだけです。これらのクラスをObjectiveCまたはJavaに移植するのは簡単なはずです(申し訳ありませんが、私のBB知識はゼロですが、BBが使うものに変換するのは難しいはずはありません)。あなたはさらに、オブジェクトの記憶域をローカルに扱ういくつかのインターフェースを定義することができます。再び注意深く踏み出す必要があります。 (ObjectiveCは別の種類の獣ですが、あなたがまだ分かっていない場合はただの警告です)。

このコードを最初に移植した後は、ドメインを作成して、作業の大部分を占めるすべての努力を個々のプラットフォームに集中させます。ドメインを移植すると、そのプラットフォームの設計パラダイムについて考え始めることができ、他のアプリのように動作するネイティブアプリをそのプラットフォーム上で構築できるため、これは最良のコースです.iOS上にWP7アプリのUIを構築しても、 AndroidやBBの空間では大したことも愛もそうもありません。あなたは実際にプラットフォームの個々の強みを使うように自由に感じられます。

とにかく、ここにはあまり良い知らせがありません(しかし、私はいくつかの考えを与えられていない質問を見て嫌いです)。私は多かれ少なかれ、私の会社の開発戦略を概説しました(私たちはHTML5をクロスプラットフォーム戦略として放棄し、ネイティブ開発を受け入れています。つまり、すべてのプラットフォームをiOS、Android、WP7だけで学習する必要があります)

関連する問題