4

Windows 窗体 Simart 客户端现在是遗留物吗?它会被 Prism(和/或 MVVM)取代吗?我应该费心学习智能客户端吗?

另一个可能相关的问题是,除了数据绑定和 3D 等 wpf 中所有很酷的东西之外,Winforms 和 WPF 之间的性能差异是什么?WPF 是否难以在 Windows 2000 和 Pre2000 操作系统上运行?这个问题很重要,因为当您必须支持旧操作系统(例如在 NHS 中)时,它可以非常决定您将使用哪个平台的 winforms 或 WPF?

4

2 回答 2

6

在使用过智能客户端软件工厂和 WPF + MVVM 之后,我当然会认为 SCSF 是“遗留的”。我不会在新项目中使用它。首先,它基于 WinForms,但也许更重要的是,它是一个臃肿的框架。它很麻烦并且不适合单元测试。我发现,在使用它开发应用程序 5 年的大部分时间后,该框架经常“阻碍”。

我无法与 Prism 交谈,但在我使用 SCSF 的经验之后,我会回避任何开箱即用的框架。当我开始使用 WPF 和 MVVM 时,我编写了自己的“框架”位。真的,我发现我唯一需要的是一个好的 IoC 容器(我选择了结构图)和一个 EventAggregator(我自己编写的两个接口和一个类实现,直接从 Jeremy Miller 的博客上的一篇文章中借用)。除此之外,我使用直接的 WPF 和 MVVM 开发模型。

给定一个全新的桌面应用程序,我的选择是 WPF、MVVM 和 StructureMap。

于 2010-09-09T14:34:59.220 回答
1

我认为您的第一个问题几乎可以归结为WPF 与 Winforms,之前已经回答过。

但是,关于您在 Win2000 及更早版本上关于 WPF 的第二个问题,WPF 是 .NET 3.0 的一部分,并且您至少需要 XP SP2 或 Win2003 Server for .NET 3.0,如此处所示所以如果您想在一个预 XP 环境,你必须坚持使用 WinForms。

于 2010-09-09T09:41:40.117 回答