WPFはWindowsアプリケーションの選択ですか?

私は、PTVSを使ってVisual Studio 2010でIronpythonを開発しています。

私はWPFが銀色の同等物に比べてかなり遅いことを知っています...少なくとも私に。 私のプログラムは多くの計算をしますが、ユーザーインターフェイスはとてもシンプルです。 私は、たくさんの WPFとSilverlightの質問を読んだことがあります。 こちら あまりにも。 私はSilverlightのブラウザ外モードについて聞いた...私はそれについて考えるべきか分からない。

私は少し混乱です、私は速くするために私のアプリケーションが必要、私はユーザーインターフェイスに関する多くのものを必要としません。 これは、Windowsアプリケーションのみ、それはユーザーのコンピュータ上で実行する運命づけられています。

so, is wpf actually the best choice in this case?

ありがとう

10
@dario_ramos:理論上。実際には私はそれが起こるのを疑う。
追加された 著者 Ray,
残念ながら、 "最高"のものを求めることはあまりにも主観的です。質問をより客観的に言い換えることができますか?例えば。 「WPFは従来のWindows Formsに比べてどんな利点がありますか?」
追加された 著者 Paul Turner,
ユーザーインターフェイスが本当にシンプルな場合は、bussinessロジック(MVPパターンなど)から切り離し、複数のビュー(WPF、Silverlight)を使用できます。あなたのGUIツールキットは設定パラメータになり(あなたのアプリは「スキンナブル」になります)、それらを試して簡単に比較することができます
追加された 著者 dario_ramos,
@レイ:彼はシンプルなGUI(小)を持っているので、複数のビューを実装する時間があると思いました
追加された 著者 dario_ramos,

6 答え

正直言って、他のすべてのコメントに反する。単純なアプリケーションでもWPFを使用します。実際には、他のUIフレームワーク上で必要なコードをたくさん避けることができます。私は、WPFを使用すると、コレクションに項目を追加するためのイベントハンドラをたくさん書いたり、リストなどに表示したりすることなく、変更しようとしているデータについて直接考えることができます。また、WPFはMVVMを使用するようにバインドされていませんビューモデルとモデルの両方を組み合わせたクラスを使用します。 WPFを使用した後、Windowsフォームを再び使用することは想像できません。

もちろん、これは私の個人的な意見です。 最後に、常に手元の問題に最適なツールを使用してください。あなたがWPFを知らず、ちょうど小さなアプリケーションのためにそれを使いたいのであれば、私はWindowsフォームや他のものを提案します。

16
追加された
+1:あなたがよく知っているもので生産性もまた重要なポイントです。私はまだ奇妙なWinフォームアプリケーションを書いていますが、今はWPF/Silverlight&Expression Blendで多くの時間を費やしているので、WPFが好きです。 MVVMバインディングは非常に簡単に操作できます。
追加された 著者 Gone Coding,
これは私が試してみたことですが、あなたはそれをもっとうまくいっています。
追加された 著者 cwharris,

私の主観的意見では、最善の選択肢はwinformsです。私は開発が早く、オンラインで多くのドキュメンテーションとサポートを受けています。 WPFはより多くのユーザーインターフェイスに基づいており、当然MVVMパラダイムを使用します。単純なアプリの場合、それは単にあまりにも膨満です。

2
追加された

あなたのUIが本当にシンプルで、ブラウザーベースのアプリケーションがSilverlightに適しているならば、Silverlightは.NETの削除されたバージョンを使用するので、より速く実行するでしょう。しかし、私は最近、非常に重いグリッド/ツリービューを使用してかなり複雑なUIを持つアプリケーションを作成していましたが、多くのデータとカスタムビヘイビアを実装していました。

これと比較して、Silverlightよりも遅いですが、UIがかなりシンプルであれば、どれくらい遅くなるのが現実ですか?

また、Silverlightは、.Netの削除されたバージョンを使用しているので、Silverlightがサポートしていないシーンの背後に必要な機能はありますか?

私は@Daniel CasserlyのWPF/MVVMについて単純なアプリケーションのためにあまりにも肥大化しているとは思うが、MVVMはその背後にあるロジックからあなたのUIを素早く分離し、必要ならばこのアプリケーションを拡張できるようにする。私はWPFのデータバインディングの方法を好み、WinFormsメソッドよりもXAMLのUIを設計することを好みますが、これは単に個人的な好みかもしれません。

基本的なUIを作成するのが難しくないうちに、WPFを初めて使用したことがある場合

1
追加された

あなたのユーザーインターフェイスが本当にシンプルならば、私はwinformsがおそらくもっと簡単だろうと言っています。 WPFは非常に強力ですが、力は複雑で学習の時間もかかります。

シンプルなインターフェースではスピードは問題にならないはずです。

1
追加された

WPFは、WPFをよく知っていて、アプリケーションの半分を開発するときに互いにぶつかることなく抽象化をコーディングできるデザイナーと開発者を持つWindowsアプリケーションの「選択肢」です。

それ以外の場合は、お互いに非常に怒っているので、開発が遅くなります。なぜ、古いWinFormsを使い始めたのか不思議に思うでしょう。

WPFが提供するものを悪用することはありません。

Edit:

ちょうどあなたがユーザーインターフェイスが本当に簡単だと分かった。今のところWPFをスキップし、WinFormsを使用して、Model View Presenterスタイルを実行します。そうすれば、WPFに後で更新する必要がある場合、それは大きな試練ではありません。 (MVPはコードの可読性とテストには最適です)。

1
追加された
winformsのデザイナーインターフェイスは、Ironpythonのビジュアルスタジオでは利用できません。私はWPFと一緒に行く必要があると思います(私は開発者とデザイナーです)
追加された 著者 prince,

まさに、ブレンドとすべてのツールで、あなたは非常に速くあなたのUIを得ることができます。学習のwinformsは少なくとも将来的にではなく、xamlはどこにでもあります。 Wpfは比較的多くのリソースを必要とし、ゆっくりとロードしますが、シンプルな非同期プログラミングではパフォーマンスが十分に上回ります。軽量化のために、ブラウザからSlを使用することも可能です。

0
追加された