1

Windows Phone 8 (これから WP8 と呼びます) の新人開発者ですが、Android の経験者として、WP8 の開発にはどのような困難があるのでしょうか。

このOSを開発された方には、その経験から学んでいただきたいと思います。

より具体的に言うと、ここに私の質問のいくつかがあります:

  1. アプリのサイズ制限: Android では、各アプリの最大サイズは 50 MB ですが、より大きなアプリの場合は (50 MB に加えて) 最大 4 GB まで拡大するライブラリがあります。WP8に制限はありますか?もしそうなら、それは何ですか?それを拡張する方法もありますか?

  2. メモリの制限: Android では、各アプリの最大ヒープ サイズの制限は比較的小さくなっています。各アプリはこの制限までメモリを使用でき、それ以上使用しようとすると、メモリ不足の例外でアプリがクラッシュします。WP8には何がありますか?Windowsのような仮想メモリはありますか?

  3. エミュレーション & デザイナー vs デバイス: Android では、エミュレーターは非常に遅く (非常に機能的ですが)、エミュレーターと UI デザイナーの両方が、実際のデバイスと同じビジュアル画面を常に持っているわけではありません。たとえば、エミュレーター (または特に UI デザイナー) では、画面が 1 つの方法で表示される場合、まったく異なる方法で表示される可能性があります。WP8 のエミュレーター (および UI デザイナー) を尊重し、実際のデバイスの代わりに実際に使用できますか?

  4. IDE の便利な警告とヒント: Android では、各バージョンに独自の新しい API 機能がありますが、古いデバイスで実行できる場合にアプリに新しすぎる機能を使用すると、IDE (LINT ツールを使用) によって警告が表示されます。それだけでなく、あなたを助け、より良い開発者になるための警告とヒントがたくさんあります。Visual Studio には、WP8 での開発のためにどこかに同じ機能が隠されていますか?

  5. マルチスクリーンのサポート: Android では、複数の画面、解像度、密度をサポートするために多くの手順が実行されました。彼らは、デバイスの密度に基づいたピクセル数を持つ DP と呼ばれる長さの単位さえ作成しました。複数の画面をサポートするために、WP8 は何を提供する必要がありますか? 自分でそのようなことを確認する必要がありますか、それともすぐに使える解決策はありますか? ViewBox というクラスにも気付きました。さまざまなアスペクト比の画面を処理するためのソリューションとして使用するのが一般的ですか?

  6. 低メモリ フットプリントの UI コンポーネント: Android では、一部の UI コンポーネントは、メモリの使用量をできるだけ少なくすることを考慮して作成されました。例として、AdapterView から拡張されるすべての UI コンポーネントは、最小限の数の UI コンポーネントを使用して、ユーザーがスクロールできる無制限の量のデータを表示するアダプターを使用します (listView クラスなど)。WP8にも同様のソリューションがありますか?

  7. その他のヒント: あなたの経験に関するその他の一般的なヒントや、注意すべき点があればぜひお聞かせください。おそらく、あなたの一部が知っている他のトピック、または WP8 の開発時に他の Android 開発者が直面したことです。

お時間をいただきありがとうございます。

4

1 に答える 1

2

私の意見:

1- そんな制限は聞いたことがありません。

2- Windows Phone 8 のメモリ使用制限

3 & 5- Android のような wp8 (xaml) には「px」や「dpi」のような単位はありません。「このボックスを10にする」と言うだけで、オペレーティングシステムは画面解像度に従ってこれを処理します。アプリがエミュレーターで適切に動作する場合、アプリはエミュレーターだけでなく他のデバイスでも動作します。

6- Silverlight には「データバインディング」と呼ばれる機能があります。任意のオブジェクトを UI にバインドできます。オブジェクトを初期化するだけで、リストビューやテキストビューの操作を行う必要はありません。Silverlight が処理します。( http://www.codeproject.com/Articles/80555/Databinding-in-Silverlight-applications )

7- WP8 SDK は、C# ライブラリのすべての機能をサポートしているわけではありません。このことを認識しておく必要があります。

于 2013-02-08T21:10:49.950 に答える