我们目前正处于为 Windows 开发桌面应用程序的前期阶段。但是当听到关于 Windows 8、Silverlight、WPF、Jupiter 的所有最新讨论时,我不知道该相信什么了。现在用 WPF 开始一个新项目是错误的吗?我应该切换到 Silverlight 吗?还是我应该等到 Windows 8 的更多细节出来?
5 回答
选择具有您的应用程序需要运行的功能的最简单的语言。
如果您只需要 HTML5 和 Javascript,请使用它。然后,您将拥有一个可以在任何浏览器中随处运行的应用程序。
如果您需要 .Net 运行时,请在 Mono 或 Visual Studio 中使用任何 CLR 支持的语言(C#、VB.Net、F# 等)。.Net 应用程序将得到长期支持。
有趣的话题,重点是你是基于 Windows(Winforms 或 WPF)还是基于 Web(ASP.NET MVC 或 Silverlight)。
对于我们刚刚开始的新业务应用程序,业务需要基于 Windows 的,因为他们需要更多功能,IT 希望基于 Web 的没有部署问题并且更容易在集中式服务器上提供支持,而不是试图弄清楚客户端机器有什么。 .
事实上,我相信 WPF 已经为 LOB 做好了准备(即使与 winforms 相比,第三方控件仍然更少)。
我不会投资 SL,因为仍然需要一个插件,并且使用 MVC / Ajax 和 HTML5,您可以做同样的事情,而且不需要插件,并且在所有浏览器和平台上运行相同的 UI(我非常关注让我的网络应用程序运行)也适用于 iPad 和 Android 平板电脑,没有任何变化)...
重点是架构,如何将其分布在服务器和层之间,以便具有良好的工作负载分布和良好的可靠性......然后,如果您有基于窗口或基于 Web 的 UI,只要这些 UI 使用与 WCF 公开的相同服务器组件例如端点......更像是一种“种类”的细节......
答案将取决于许多问题,而不仅仅是最新和最好的语言是什么。它还涉及开发人员的技能(或购买它们的成本),交付、运行和支持环境是什么,应用程序要求是什么。
如果您的技能是 WPF,那么这将是一个指向。OTOH,如果 Silverlight 提供适当且相关的功能,那么转向该功能可能具有重要价值。
答案应该更多地取决于应用程序和环境,而不是受欢迎程度。
等待一个新版本的操作系统问世,有一个可以接受的吸收(想想 Windows Vista)并成为每个人都希望的平台有点牵强和相当大的依赖。就我个人而言,我会坚持你/你的团队熟悉的技术,然后从那里开始。
从 Silverlight 开始应该是相当安全的举措。原生 W8 UI 将基于 XAML,并且与 Silverlight 使用的非常相似(如果传闻可信的话)。如果在某些时候您决定您已经超越了 Silverlight 沙箱,您应该能够毫不费力地迁移到 WPF 或本机 W8。
正如其他人所提到的,如果您可以在 HTML5/javescript 中实现所有功能,您应该认真考虑它。它的开发时间成本会更高,而且如果您遇到 HTML5 的限制,您将无法轻松获得更多功能丰富的技术,但您将获得无与伦比的平台覆盖范围。