目前对 WPF 有哪些看法?
我正在寻找基于 WPF 4.0 版本的一些当前观点。
我们正在尝试决定是否需要带有 WCF 服务器的桌面应用程序,或者是否需要 ASP.Net Web 应用程序。我真的很想在 WPF 中执行此操作,但是出现了一些重大问题,我不确定 WPF 是否可以处理。我在网上查了一下,很多WPF评论都是基于3.5版本的,所以我正在寻找一些当前的意见。
- 有哪些类型的支持? Microsoft 支持和社区? WPF 是一项即将消亡的技术还是一项不断发展的技术?
- 寻找 WPF 程序员更难。情况总是如此吗?
- 终端服务的性能如何?我们的大多数用户使用 WYSE 瘦客户端登录 Windows 2003 终端服务器。每一天,每台服务器通常有 10 到 30 人在使用。我们的大多数 TS 用户只需要基本的查看/插入/更新能力,而我们的管理人员需要更高级的功能和报告。管理员用户都拥有 SP2 或更高版本的 XP 计算机。
- 关于 WPF 我还应该担心什么?
I was looking for some current opinions on WPF based on their 4.0 release.
We are trying to decide if we want a Desktop application with a WCF server, or if we want an ASP.Net web app. I would really like to do it in WPF, however some major concerns have come up that I am not sure if WPF can handle. I have looked around online and a lot of WPF reviews are based on the 3.5 version, so I was looking for some current opinions.
- What sort of Support is out there for it? Microsoft support and Community? Is WPF a dying technology or a growing one?
- It is harder to find WPF programmers. Is this always going to be the case?
- What is the performance like for terminal services? The majority of our users login using WYSE thin-clients to a Windows 2003 terminal server. Each server normally has between 10 and 30 people on it on any given day. Most of our TS users only need basic view/insert/update abilities and our admin staff needs the more advanced features and reporting. The admin users all have XP machines with SP2 or higher.
- What other concerns should I have about WPF?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这里的根本问题似乎是 WPF 对于严肃的桌面应用程序开发来说是否是一项足够成熟的技术。恕我直言,答案当然是肯定的,我提供的证据是 Visual Studio 2010。它是用 WPF 编写的,是一个主要的桌面应用程序,必须满足您问题中列出的标准。
试图阻止 2010 年的到来是缓慢且充满缺陷的争论。是的,2010 并不是一个完美的产品,并且存在缺陷。这些问题中的绝大多数并不纯粹是 WPF 问题,而是与遗留代码、托管本机互操作或只是新旧技术之间有趣的交互有关。
用手挥手回答一些非技术问题...
It seems the underlying concern here is whether or not WPF is a mature enough technology for serious desktop application development. The answer there is IMHO certainly yes and the proof I offer is Visual Studio 2010. It is written in WPF, is a major desktop application and has to meet the criteria laid out in your question.
To attempt to head off the 2010 is slow + buggy argument. Yes, 2010 is not a perfect product and has bugs. The vast majority of those problems are not purely a WPF issue but instead are related to legacy code, managed native interop or just interesting interactions between old and new technology.
To answer some of the non-technical questions with hand wavy answers ...
#1 - 我用 WPF 完成了项目。那里有相当多的信息。微软目前似乎在 Silverlight 上投入更多,但我怀疑 WPF 和 Silverlight 将在未来几年合并。在可预见的未来,WPF/Silverlight/XAML 将成为 Microsoft 构建桌面应用程序的方式。
#2 - 具有良好 WPF(或 Silverlight)技能的开发人员很难找到,但并非不可能。 WPF/Silverlight 确实有一个陡峭的学习曲线。
#3 - 在终端服务器上运行的 WPF 应用程序存在问题,因为 WPF 在 DirectX 之上运行。我肯定会尝试在 Windows Server 2003 终端服务器上运行 WPF 应用程序,看看它的行为如何。我最担心的是 Microsoft 可能会投资于 Server 2008 TS 的任何与 WPF 相关的修复程序,但我不确定他们是否一定会将这些修复程序移植到 Server 2003。至于一个好的测试应用程序,我会选择像 WPF 这样的东西照片查看器演示 (http://msdn.microsoft.com/en-us/library/ms771331%28VS.90%29.aspx)。一些相当图形密集的东西来强调 TS。
#4 - 就我个人而言,#3 是恕我直言最关心的问题。如果您无法在 Windows Server 2003 TS 上运行,那么其他问题就没有意义了。
#1 - I've done projects with WPF. There is quite a bit of information out there. Microsoft seems to be investing more in Silverlight at the moment, but I suspect that WPF and Silverlight will be merged in the coming years. WPF/Silverlight/XAML will be Microsoft's way of building desktop apps for the foreseeable future.
#2 - Developers with good WPF (or Silverlight) skills are hard to find, though not impossible. WPF/Silverlight definitely has a steep learning curve.
#3 - There have been problems with WPF apps running on terminal server because WPF runs on top of DirectX. I would definitely try running a WPF app on your Windows Server 2003 terminal server to see how it behaves. My biggest concern would be that Microsoft would likely be investing in any WPF-related fixes for Server 2008 TS and I'm not sure they would necessarily port those to Server 2003. As for a good test app, I would grab something like the WPF photo viewer demo (http://msdn.microsoft.com/en-us/library/ms771331%28VS.90%29.aspx). Something reasonably graphically intensive to stress TS.
#4 - Personally #3 is the biggest concern IMHO. If you can't run on Windows Server 2003 TS, the other questions are moot.
担忧#1:什么样的支持
到目前为止,它正在成长并且成长得很好。从 VS2010 开始,IDE 支持终于得到了不错的支持,而且 MS 似乎将在很长一段时间内推动这一点。 MS 和社区的示例已经丢失。
问题#2:寻找 WPF 程序员更难。
好吧,这取决于你想要让你的用户界面变得多么疯狂。如果您想要最新、最棒的 3D 动画和多种效果,可能很难在街上找到具备您负担得起的所有这些技能的人。然而,如果您正在开发一个相对简单的 UI,许多经验丰富的开发人员可以很快胜任这个角色。
关注点#3:终端服务的性能如何?
这取决于您想要添加多少动画和其他精彩功能。如果屏幕上发生很多事情,就会占用更多带宽。再说一遍,简单的界面应该没有问题。
问题#4:对于 WPF 我还应该有哪些其他问题?
很难说!
Concern #1: What sort of Support
So far, it's growing and growing well. The IDE support is finally decent as of VS2010, and it appears as though MS is going to be pushing this for a good amount of time. There are lost of examples from MS and the community.
Concern #2: It is harder to find WPF programmers.
Well, it depends on how crazy you want to get with your UI. If you want the latest, greatest whiz bang 3D animations and multiple effects, it might be difficult to find someone off the street with all of those skills that you can afford. However, if you're banging out a relatively simple UI, many experienced developers can quickly grow into this role.
Concern #3: What is the performance like for terminal services?
That depends on how much animation and other whiz bang features you want to add. If there is lots happening on the screen, it will take more bandwidth. Once again, a simple interface should have no problems.
Concern #4: What other concerns should I have about WPF?
Hard to say!
技术总是存在过时的风险。事情就是这样。而且没有办法确定。
这是一种可能的情况:WPF 正在被 Silverlight 掩盖,因为每个人都想“在 Web 上进行操作”。您决定在 Silverlight 中开发您的应用程序(尽管它只是 WPF 功能集的一个子集),但却被 HTML 5 打了个措手不及,HTML 5 接管了世界,因为现在您无需插件即可在浏览器中完成所有操作。甚至 Flash 也变得过时了。
它会发生吗?谁知道?
人们仍然很高兴地开发 Winforms 应用程序,这可以说是一种过时的技术。他们担心过时吗?可能不会。
据我了解,微软积极、热情地支持这项技术。如果您担心性能和其他问题,了解它是否满足您的需求的最佳方法是构建原型。
There is always a risk that a technology will become obsolete. That's just the way it is. And there's no way to know for sure.
Here is a possible scenario: WPF is being overshadowed by Silverlight, since everyone wants to "do it on the web." You decide to develop your application in Silverlight (even though it's only a subset of WPF's feature set) and get blindsided by HTML 5, which takes over the world because now you can do everything in the browser without a plugin. Even Flash becomes obsolete.
Will it happen? Who knows?
People are still quite happily making Winforms applications, arguably an obsolete technology. Are they worried about obsolescence? Probably not.
As far as I know, Microsoft actively and enthusiastically supports this technology. If you are concerned about performance and other issues, the best way to find out if it meets your needs is to build a prototype.