当你有VS2010时,是否需要Expression Blend?

3

此前该网站上有帖子称如果没有Expression Blend,使用WPF编程会很困难?

在VS2010中是否仍然如此,或者这个新的IDE有哪些功能使得WPF变得更加容易?


1
我从未使用过Expression Blend。到目前为止,VS2010 XAML设计师对我的WPF开发非常有帮助。但这只是我的个人经验 :) - BoltClock
1
我认为程序员不需要Expression Blend。如果你是程序员/开发人员,你想在Visual Studio中编写XAML而不是使用可视化编辑器。如果你更多的是设计师,那么Expression可能是你要使用的工具。 - Filip
1
如果你是一个“开发设计师”(devigner),那么你需要表达能力。 - SliverNinja - MSFT
7个回答

5
我是一名开发者,但如果没有Expression Blend,我将无法开发任何类型的XAML应用程序。它的价值太大了,不仅仅是漂亮的图形。在Blend中,模板、数据绑定、资源管理、布局、快速设计、可视化等都是极为优秀的体验。
我真的很难理解开发者拒绝使用Blend。除了它不免费或未包含在Visual Studio中之外,没有什么理由可以忽略这样一个强大的工具。是的,它与Visual Studio不同,有学习曲线,但一旦你知道如何使用它,Blend毫无疑问是正确的选择。
我知道开发者需要帮助来度过学习曲线。我也知道Blend与我们过去使用的其他工具不同:相信我,我曾经也有过这样的感受!这就是为什么我写了《Expression Blend in Action: a developer's guide》这本书,以帮助开发者克服这个障碍。这并不是广告,所以我不提供链接,但如果您感兴趣,可以在Manning.com上找到它。

我认为Blend是Visual Studio的扩展。在处理任何XAML项目时,我通常同时打开两个软件。 - Walt Ritscher
Joel被包含在两个(我相信)顶级MSDN订阅中,但也可以通过免费的Windows Phone开发版的免费VS Express版本获取Blend的免费版本。 - user179700
是的,Blend(不包括SketchFlow)随附于MSDN Premium,而Blend(包括SketchFlow)则随附于MSDN Ultimate。它们都是Expression Studio的一部分,但不能单独购买。是的,Blend for WP7是免费的,但仅限于手机项目。此外,在http://www.microsoft.com/expression/try-it/上还提供了免费的60天试用版。 - Joel Cochran
我了解Blend的优点。但是,如果我正在开发一个相对简单的“Windows Forms”类型的应用程序,它具有静态UI(编辑框等),那么我是否可以不使用Blend呢?谢谢。 - Sabuncu
当然可以,只是我不想这样做。这是我的个人喜好,有很多人在Visual Studio中手写XAML代码。 - Joel Cochran

2

这取决于您使用WPF的目的。

如果您正在编写一个企业级CRUD应用程序,则根本不需要Expression Blend。

我已经在WPF中编程多年,仅在一个月前才被介绍到Expression Blend。 它确实使一些事情更容易,特别是动画或矢量图形。

但是,如果您已经习惯直接在XAML编辑器中输入(大多数开发人员都是这样),那么没有必要使用它来完成工作。


2
我不确定为什么人们要比较在Visual Studio和Expression上开发WPF应用程序的区别。简单地说,当您需要对应用程序进行矢量设计时,Expression Blend是最佳选择。你不能按照自己的需求在WPF中设计控件。Expression Blend使用高级OpenType排版和ClearType的WPF文本引擎,矢量2D小部件以及通过DirectX提供硬件加速的3D小部件。
本质上,它是由Microsoft开发和销售的用户界面设计工具,用于创建Web和桌面应用程序的图形界面,它融合了这两种类型应用程序的特点。它是一个交互式的所见即所得前端,用于为Windows Presentation Foundation和Silverlight应用程序设计基于XAML的界面。
Expression Blend支持开发适用于Microsoft Silverlight浏览器的Rich Internet Applications,提供动画、矢量图形、交互性和视频播放功能。

2
简而言之,不是必须使用Expression Blend。但是,它是一个很棒的UI设计工具,可以简化您的UI开发。就像任何其他工具一样,它被优化用于执行特定任务。开发人员根据他们所需的任务选择工具。想一想单元测试。使用单元测试框架可以为我们节省大量时间和精力,因为框架人员已经将其工具优化为此任务。
对我来说,Blend是我使用以下功能的首选工具:
- 动画和时间轴 - 渐变编辑 - 控件模板 - 模板部分 - 可视状态管理器 - 资源和资源字典 - 样式 - 示例数据,带有数据绑定 - 形状组合 - 路径,布局路径
这里只是一个例子。在Blend中设置一个多部分动画可能只需要两分钟的时间。在Visual Studio XAML编辑器中编写相同的动画逻辑可能需要5-10倍的时间。此外,Blend具有动画预览功能。在VS中,我必须编译并运行我的应用程序以查看动画是否按预期工作。对于大型项目,构建时间会影响我的生产力。

1

WPF或Silverlight不需要使用Blend,但是它可以让一些事情变得更加容易。具体来说:

  • 动画
  • 提取控件模板
  • 在不必构建和运行所有内容的情况下为控件设置样式

没有Blend也可以完成所有这些操作,但不够方便。例如,您可以编写一个WPF程序来提取控件的默认模板,然后将其显示为文本。或者,如果您使用Blend,则可以单击一个按钮。我发现如果没有Blend,我就必须不断地进行编辑/构建/运行循环,这需要时间。(“不对,这个颜色不对。如果我稍微调整一下呢…”然后我就去拿杯咖啡,整个过程都要构建和运行,只是为了检查一个颜色。)

Blend节省了我的时间,使我的生活更轻松 - 这就是为什么我使用它或任何其他工具的原因。


1

这有点是非两可,你可以在没有Blend的情况下进行Xaml开发,但对于某些事情,Blend是一个更好的解决方案。个人而言,除非我知道我将要做一些自定义样式或通用的自定义UI,否则我会坚持使用VS2010。


1

你提到了WPF编程,所以我觉得你不是一个UI设计师。建议使用Visual Studio进行开发,因为在Visual Studio中没有Expression Blend不能做到的事情。


这有点误导人。你在“视觉上”可以做的相当丰富。也许你或他不需要或使用这些功能,但是你几乎不可能在VS中轻松绘制除了基本图形以外的任何东西。例如,尝试进行复杂的叠加、匹配某些类型的颜色、复杂的笔迹路径等可能在VS中是可能的,但即使说它很难做到也是低估了难度。 - user179700
@user179700 我的回答非常偏向于开发人员/程序员,但我在工作中仍然没有发现Expression的实际用途。我认为使用Visual Studio中的WPF编程已经足够简单,不需要寻找其他工具。 - Filip

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接