web-dev-qa-db-ja.com

私は.Net、C#、およびWPFプログラマーです。 Expression Blendはそれだけの価値がありますか?

つまり、通常の開発者として、VSを使用しないExpression Blendで達成できることはありますか?私はExpressionBlendのことを知りませんし、一見したところあまりフレンドリーで習得しやすいようには見えませんでした。

あなたはそこに何をしますか?それを使用することを学ぶのは時間の価値がありますか、それとも私はVSで行うのと同じことをしますか?

ありがとう!

編集:マイクロソフトがツールについて何と言っているか知っています。私が知りたいのは、私のような開発者として、Expression Blendを試したところ、時間の無駄だと思ったのか、それとも優れたツールだと思って、VSからのWPF GUIの開発をやめて、EBに切り替えたのかということです。

49

私はそれを持っていて、めったに使用しません。

XAMLファイルに追加される余分なマークアップはすべて非常に嫌いで、アイテムをドラッグ/ドロップするだけで何をしているのかを知りたいと思っています。

コントロールのデフォルトのスタイルやテンプレートを引き出したり、グラデーション、アニメーション、パスなどを作成して、XAMLをコピーしてプロジェクトに貼り付けたりするのに何度か使用しました。

ドラッグアンドドロップコーディングに興味がある場合、またはUIとコーディングチームを分離するのに十分な規模のチームで作業している場合は便利ですが、それ以外は、ソロ開発には使用しません。生成されるXAMLの混乱を維持します。

63
Rachel

VSでのGUIの開発をやめ、Blendに切り替えました。最初は非常に混乱していましたが、Blendを学ぶのに時間を割いて良かったです。 Blendで実行できるほとんどのことは、Visual Studioで実行できますが、Blendを使用すると、(実行方法を習得すると)はるかに簡単になります。単純なドラッグアンドドロップでかなりのタイピングを置き換えることができるので、Blendで何かを行う方法を開発者に示すとき、私は常に仲間の開発者を驚かせています。 Blendについて私が本当に気に入っているのは、デザインの表面が正確であるのに対し、VisualStudioのCiderWPFデザイナーはしばしばあなたに嘘をついたり、誤解を招いたりすることです(そして、一般的にはただのがらくたです)。

Blendは、VisualStudioではできない次のことを実行できます。

  1. 視覚的な状態を作成および管理します。 (VSではこれをすべて手作業で行うことができると思いますが、それは適度に複雑なものでも非常識です。)
  2. コントロールテンプレートを抽出して変更します。
  3. ビヘイビアーを簡単に操作できます(VSでFluidMoveBehaviorを手動で実行することは想像できません)。
  4. 設計時に使用するサンプルデータを生成します(ソフトウェアコンポーネントの結合を減らします)。
  5. WYSIWYGアニメーションエディタ。 (VSでは、アニメーションを表示するにはアプリケーションを実行する必要があります。Blendはライブプレビューを提供します。)
  6. トランジションエフェクトとイージング機能を内蔵。
  7. SketchFlow(クライアント/利害関係者に表示できる忠実度の高いモックアップを作成するのに最適)。
  8. WYSIWYGパスエディター(単純なベクターアートワークを行うのに最適)。
  9. WYSIWYGグラデーションエディター。
  10. PhotoshopとIllustratorからアートワークをインポートします。

これらは、他のすべてのフリーランサーとは一線を画すユーザーエクスペリエンスを実際に設定できる種類のものです。そして、記録のために、私はデザインの経験のない開発者です。

36
Mike Post
  1. デフォルトのスタイルを新しいスタイルに抽出するオプションEdit a copyがあり、それを変更できるため、デフォルトのスタイルを編集する方がはるかに簡単です。
  2. 追加のスタイルコントロールが何を持っているかを簡単に確認できるので、生成されたコンテンツなどの追加のスタイルを編集するのにも非常に便利です。
  3. アニメーションを作成している場合は、設計時に実際にどのように動作しているかを確認できるため、違いが生じる可能性があります。
  4. チームに専任のデザイナーがいる場合は、フォトショップ/フラッシュ編集ソフトウェアに似ているため、チームにとってはるかにフレンドリーです。
  5. 私の見解では、チームで作業している場合は、表現のブレンドが少ないだけで十分です。
16
baalazamon

私は常にVisualStudioの横でExpressionBlendを開いており、Silverlight、WPF、またはWindowsPhoneプロジェクトで作業しているときに2つを切り替えます。これらは私の主な理由です:

私は自分のアプリケーションで多くのアニメーションと視覚的状態を使用しています。これらを作成するには、何が起こっているのかを確認します。 Visual Studioでは、(まだ)できません。実際のアニメーションや視覚的な状態を手で書くことはほとんど不可能です。

リソースの管理も、ExpressionBlendを使用しています。 Blendでは、新しい辞書の作成とリソースの移動が非常に簡単です。どこかで使用しているリソースを削除しようとすると通知されます。リソースの検索と編集は非常に簡単です。ボタンをクリックするだけで、プロパティがリソースに変換され、他の場所で使用できるようになります。

私がよく使うもう1つのものは、サンプルデータです。フォームやリストを作成するときに、データが入力されていることを確認したいと思います。アプリケーションの状態に応じて、サンプルデータを手動で作成するか、データベースからxmlエクスポートを使用するか、コードからサンプルデータを生成します。

サンプルデータを使用すると、データバインディングがはるかに簡単になります。プロパティをテキストボックスにドラッグアンドドロップするだけで、バインディングが作成されます。データバインディングエディタを使用して、バインディングを希望どおりに微調整できます。

14
Sorskoot

私はあなたの質問に答える簡単な方法があると思います...あなたがしなければならないのはあなたがBlendでしたことの最終結果は何であるかを自問することだけですか?

答えはXAMLです。では、このツールがXAMLを生成するのであれば、そもそもXAMLを直接操作しないのはなぜですか? XAMLは人間が読める形式であり、理解と習得が容易であり、VS IntellisenseとResharperコード補完の間では、実際にはそれほど多くの入力は必要ありません。

BlendはXAMLを視覚的に生成するために使用されるツールにすぎないため、Blendの習得に投資する時間は、XAMLの習得により多く投資されます。したがって、XAMLを直接操作することは、基盤となるテクノロジーをよりよく理解し、依存する代わりにコードを完全に制御することを意味します。あなたが本当に理解していない何かを生成するためのいくつかのブラックボックスツールで。

そして、Blendの習得にずっと投資していて、6か月後に他の会社に行き、Blendを使用しないことにした場合はどうでしょうか。 XAMLを知らない場合は、それを学ぶためにより多くの時間を費やす必要があります。XAMLを知っている場合は、どの企業も作業が必要なコーダーを強制することはないと思うので、どのような環境でも問題ありません。 UIでもBlendを使用し、XAMLを直接操作できないようにします。

Blendがかなりの時間を節約するシナリオがいくつかあります(人々は視覚的な状態やアニメーションについて言及しました)ので、そのような機会にBlendを使用することは確かに良いことですが、典​​型的なLOBアプリを開発している場合、そこにあなたを作るものはほとんどありませんあなたが本当に、本当にブレンドが必要なように感じます...

2
Dean Kuga

プロの開発者として、Expression Blendは非常に貴重であり、VSが実行しない多くのことを実行します。

頭から離れて、サンプルデータ、ストーリーボーディング、はるかに優れたデータテンプレートのサポートはるかに優れたリソースディクショナリのサポートはるかに優れたカスタムコントロールツールはるかに優れたXAMLコントロール

非常に基本的なUIを編集しているだけの場合、BlendはVSに固執することはありません。 Blendはデザインとアニメーション用で、フロントエンド用です。

2
Mark Homer

Visual Studioが開発者向けである場合、ExpressionBlendはデザイナー向けです。たくさんのコードを生成でき、使いやすい事前定義ツールがたくさんあります(特に、アニメーション、デザインの問題など)。つまり、Expression Blendで実行できることはすべて、VisualStudioで実行できます。私はその逆についてはよくわかりません。

これが公式サイトで言ったことです:

Expression Blend、Visual Studio、Silverlight、および.NETは、今日の市場で最も説得力のあるシームレスな設計および開発ワークフローを提供します。ユーザーエクスペリエンスとコアアーキテクチャの両方を迅速に繰り返し、最初のプロトタイプから完成したプロジェクトまでアイデアをすばやく進化させます。

Behaviors、Visual State Manager、トランジションエフェクト、SketchFlow(Expression Blend4にはExpressionStudio 4 Ultimate製品のSketchFlowのみが含まれます)などのExpression Blendの主要コンポーネントと、この最新のワークフローの速度と柔軟性が相まって、限界を押し広げて作業することができます。あなたが可能だと思った限界を超えて。

したがって、それはあなたがどこにいるかによって異なります。アプリケーションのUIレイヤーを主に使用している場合は、Expression Blendで多くの便利な機能を見つけることができます。それ以外の場合は、主にバックグラウンドを使用している場合は、VisualStudioが選択されます。

更新

SOの次のトレッドもチェックしてください: WPFアプリケーション:VisualStudioとExpressionBlend

2
Samich