37

私は、本格的な WPF クライアント アプリケーションの詳細についてよく知っています。WPF クライアント アプリケーションが .NET Framework 3.5 を完全にサポートし、2D および 3D グラフィックス、テーマ設定、テンプレート化、スタイリング、トリガーなどのハードウェア アクセラレーションを可能にしていることを私は知っています。

私がはっきりしていないのは、XBAP および Silverlight アプリケーションにどのような機能や機能が存在するか、または欠けているかということです。セキュリティ上の懸念から、XBAP には特定の方法が本質的に制限されていると聞いたことがありますが、それだけです。

WPF が本格的なビジネス アプリケーションで使用するのに十分なほど堅牢であることは事実として知っていますが、XBAP と Silverlight はどうでしょうか。それぞれの重要な機能と制限は何ですか? ビジネス アプリケーションで使用すると役に立たなくなるような機能が欠けているものはありますか?

4

4 に答える 4

18

私はかなり野心的なプロジェクトのために約18か月間フルタイムでXBAP開発を試みましたが、それは絶対に嫌いでした。

カスタムマウスカーソルを設定できないなど、文書化されていない多くの制限があります。MSは、その1つと100の他の人について誰かに話すのを忘れていました。その地雷原のせいで、私は今サンドボックス化を非常に嫌っています。

それを展開の悪夢と組み合わせると(3.5 SP1の後でも、Firefoxには良い話はありませんが、まだ問題があります)、MSはSilverlightを支持してXBAPを殺すためにできる限りのことをしていると正直に信じています。私は彼らを非難しません、ただ彼らがそれについてもっとオープンであったことを望みます。

疫病のようなXBAPは避けたいと思います。それは未来のない死んだシナリオです。それらがすぐに非推奨になったとしても、少なからず驚かないでしょう。

于 2009-08-11T05:28:37.337 に答える
17

Wintellect は、ここで公開されている Silverlight と WPF の優れた比較を書いてい ます。

WPF と Silverlight での個人的な経験から、SL は LOB アプリに完全に対応できることがわかりました。.NET RIA サービスは、LOB アプリ用の SL3 への優れた追加機能です。最後の質問に答えると、私の経験では、SL が LOB アプリを作成することを妨げているものは何もありません。この説明における WPF と SL の唯一の大きな違いは、SL はレジストリなどのクライアント マシン上のローカル リソースにアクセスできず、WPF が Windows 7 のジャンプ リストやライブラリなどの Windows 固有の機能にアクセスできないことです。 . Silverlight は、展開が容易で、複数のプラットフォームをターゲットにできるため、ビジネス アプリに最適な選択肢だと思います。

于 2009-07-21T18:31:45.033 に答える
12

Silverlight に関して、これまでの経験を概説します。(注:これを読み直すと少しネガティブに聞こえますが、欠けている機能を指摘しています。全体的には、C# を使用したブラウザのリッチ UI である Silverlight が気に入っています。岩)。

大きな違いは、右クリック、マウスホイールのサポート、印刷機能がなく、新しいウィンドウを開くことができないことです。OOB SL アプリを通知領域に置くことはできません。JavaScript でマウス イベントを処理できますが、アプリで OOB を移動する場合は処理できません。

また、SL チームは、LOB の適合性を損なうほどセキュリティについて過度に懸念しているようです (新しいウィンドウがない、OOB でのローカル システム アクセスの信頼設定、通知領域など)。

これらのいくつかは、Silverlight アプリが Windows と互換性がないように感じさせます。ハイライトテキスト、右クリックコピーについて考えてみてください。または、貼り付けを右クリックします。多くの人が使用するこれらの基本的な操作が欠落しています。また、エイリアンの UI 体験のようにも感じられます。たとえば、マウスホイールで本能的にグリッドをスクロールしようとしても機能しません。これはブラウザーのどのテーブルでも機能しますが、SL では機能しません。

プログラミングに関しては、私は WPF をあまり使用したことがありませんが、私が知る限り、いくつかの問題に対処する方法にはいくつかの大きな違いがあります。

SL にマークアップ拡張機能がありません。また、整数のインデックス付きバインディングしかないため、いくつかのトリックのないプロパティ バッグはありません。トリガーがないため、常にコードを記述してイベントを接続する必要があります (より動的なページではイライラします)。ツールキットの ImplicitStyleManager を除いて、継承可能なスタイリングはありませんが、これは仕事に適していません。

したがって、特定の LOB アプリについては問題ありませんが、他のアプリについては、いくつかの手順を踏まなければなりません (たとえば、クライアントのカスタマイズ性が必要な場合)。しかし、すべての LOB アプリに適しているわけではありません。

私の印象では、SL はまだ完成していないように感じます。多くの問題があります。たとえば、データグリッドがイライラする (自動ストレッチしない、サブクラス化が非常に難しい)、オートコンプリート ボックスが少し不安定、ナビゲーション フレームワークが少し不格好、コンボボックス/ツリービューをバインドするのが難しい (必要に応じて、実際には整理されていない)。 SelectedItem を itemsSource の別のオブジェクトにバインドします)。

全体として、Silverlight はもうすぐそこまで来ています。いくつかの制限や細かな問題を受け入れる準備ができている限り、問題ありません。

于 2009-07-22T08:45:24.380 に答える
9

私はXBAPの経験はありませんが、WPFと比較するとセキュリティ面でのみ制限があるという点で、私の印象はあなたと似ています。

Silverlight について: 私は最近、これを使用して複雑な農業テレメトリ監視ユーザー インターフェイスを開発しました。これは、従来のビジネス アプリというよりもデータ視覚化アプリに近いものですが、CRUD が豊富で、必要な機能が 1 つもありませんでした。実装できましたが、私の選択したテクノロジのためにできませんでした。それがSL2でした。

XBAP を使用していれば、より多くの機能を利用できるようになると確信しています。また、ユーザーが .NET 3.5 を実行していることを保証できる場合 (または、XBAP も 3.0 の一部ですか?)、私はそれを選択します。それ以外の場合は、Silverlight をお勧めします。

(機能の比較表がもっと必要な場合は申し訳ありませんが、Microsoft で見つけることができると思います。)

于 2009-07-21T18:23:17.750 に答える