3

Windows 8 XAML アプリのユーザー エクスペリエンスが、C# と C++ のどちらで開発されたかによって (つまり、マネージとネイティブ) 異なるシナリオはありますか?

たとえば、アプリに含まれるGridView複合体を介して 500 ほどのデータ項目にバインドされている場合、ユーザーの観点からは、ある言語/テクノロジが他の言語/テクノロジよりも優れているでしょうか?DataTemplateIValueConverters

ARM と X86/X64 アーキテクチャの両方で適切に実行する必要がある、かなり複雑でデータ量の多い Windows ストア XAML アプリに C++ と C# のどちらを使用するかを確立しようとしています。

編集

これが私の質問の明確化です:

マネージ CLR で実行するように開発されたか、ネイティブ環境で実行するように作成されたかによって、Windows 8 XAML アプリのユーザー エクスペリエンスが異なるシナリオ (ある場合) はありますか?

編集2

OK - コーディング スタイルは忘れてください。ほぼ同じように見える C# (マネージド) と C++ (アンマネージド) アプリを作成するのは非常に簡単です。この質問の目的のために、実装の違いはないと仮定します。

  1. コードは無関係であるほど似ています
  2. 少なくとも 500 個のデータ項目があります
  3. あなたはGridViewを持っています
  4. ItemTemplate に Complex DataTemplate があります (両方のシナリオで同じテンプレート)

質問 - ユーザー エクスペリエンスは同じですか。誰かが答えを持っていますか、それともすべてのコードを書いて自分で試す必要がありますか????

4

2 に答える 2

5

C# と C++ に依存しません。

Windows XAML は GPU に大きく依存しており、十分な時間の複雑さを持つアルゴリズムで適切に記述されたコードを使用すると仮定すると、C# アプリと C++ アプリの両方が、UI に関連するすべてのタスクで同様のパフォーマンスで動作します。

GPU バッファーの更新に時間がかかるか、Windows または XAML ライブラリのどこかに時間がかかります。選択した言語が影響を与える場所はどこにもありません。

于 2013-01-11T13:24:34.493 に答える
3

ListView の 500 項目は、大きくなる傾向にあります。プロセッサ時間を消費するコードのほとんどは、Windows ランタイムであり、UI をレンダリングし、スクロールなどを処理します。C# と C++ の両方がまったく同じ UI ランタイムを使用します。独自のコードに費やされる CPU 時間の量は、比較するとおそらく取るに足らないものです。最適化の取り組みには、ほとんどの場合、項目テンプレートの定義方法、仮想化の有効化などに注意を払うことが含まれます。

したがって、実装言語はおそらくアプリのパフォーマンスにはほとんど影響しません。最も効果的に開発できる言語を選択してください。

于 2013-01-11T13:21:06.783 に答える