最近我读了一些关于WPF和Silverlight的开发和历史的文章/博客/评论。在一些论坛中,许多开发人员和用户批评WPF应用程序的性能(例如Visual Studio 2010)。实际上,与Flash相比,Silverlight的市场份额不是很高。在PDC 2010上,Bob Muglia说“我们的Silverlight战略和未来的重点已经改变了......”,微软希望在未来推动HTML5。
我几个月前开始学习WPF和Silverlight,现在我必须问自己,我是否应该继续花时间学习和实践这些(在我看来)非常好的和强大的技术!?他们有未来吗? (Windows)桌面(客户端)应用程序有未来吗?所谓的“富互联网应用”有未来吗?或者HTML5会成为“绝对真理” - 软件开发的主要平台吗?
您有什么看法,您的想法是什么?
答案 0 :(得分:10)
这是非常推测,但有一些关键点:
答案 1 :(得分:7)
我和你的问题非常相似。由于这些问题是主观的,人们往往对WPF和Silverlight的未来有不同的答案。对我来说,HTML5永远不会取代像WPF这样的技术。他们说“从不说永远不会”,但即使是要取代它,也不会很快发生。 HTML5在我看来像Silverlight和Flash。我们不需要安装插件(即使这种说法是主观的,因为Silverlight和Flash都在推进,HTML5真的会完全赶上那些吗?)。另外,上次我查看了一些HTML5示例时,我注意到一旦你刷新了你的网页,动画就从头开始 - 这对我来说非常有名。
WPF是一种不同的技术。我自己不是网络开发人员,但老实说,我不想在我的工具箱中拥有一堆工具,如HTML,CSS,Javascript。您可以使用单个框架,并在WPF中开发您想要的内容。这是许多开发人员尚未发现的伟大技术。当然,这带给我们的问题是“我选择桌面还是网络?”
至于桌面开发的未来,它也不会很快到来。我发现开发Web应用程序的趋势越来越强,但我们必须意识到桌面开发和云开发都有其优缺点。现在,我发现网络应用程序很慢,我猜测网页应用程序不如桌面应用程序那么强大。 Windows开发的未来取决于Windows的市场份额。如果微软可以保持垄断并且您的应用程序既有用又有趣,我认为用户不会忽视它。我认为桌面开发和Web开发之间的差异正在变得模糊,随着物理机器变得越来越强大,用户抱怨性能问题和频繁更新的人数会减少。为什么我们甚至懒得问用户是否要更新他们的软件?我觉得这样的提示很像地狱一样烦人。最好以静默方式安装更新,并让用户在下次运行时使用该应用程序。
P.S。 WPF将比WinForms更受欢迎,并且希望MS有一天会停止后者。因此,它为您提供了一个更大的投资门户。
另外,我一直讨厌在浏览器中运行应用程序的想法。我想这让我很自私,但我不想担心浏览器崩溃,浏览器不兼容,浏览器尚未支持技术的某些功能等等。
答案 2 :(得分:3)
鲍勃·穆利亚(Bob Muglia)的引用被误解,并且被吹得不成比例。微软的焦点并没有从Silverlight转移,而是因为许多人从他的采访中假设。只是Silverlight现在以不同的方式使用(商业应用程序,手机应用程序等),并且它们的重点也相应地发生了变化。
然后与Flash相比并不是很公平,因为Flash有一个巨大的开端。 Flash于1996年推出,并且已经有很长时间了。我多看了多年来Silverlight的增长。 RiaStats.com现在显示Silverlight 4的采用率为63%,非常好。对于主流应用,有时候采用率有点低。但它继续增长的事实显示了Silverlight未来的前景。
稍微更主观一点,我是Silverlight可移植性的粉丝。事实上它仍然是一个大约5MB的下载并在PC或Mac上运行或运行浏览器是非常好的。然后Silverlight也在WP7上使用,很快也在XBOX上使用。只需学习Silverlight,您就可以开发各种计算机和设备。
答案 3 :(得分:2)
HTML在开发人员和可视对象模型之间强加了一层抽象。这种抽象的回报是巨大的。但抽象意味着在HTML应用程序中可以执行的操作与使用旨在与操作系统直接互操作的技术所能做的事情之间总会存在很大的差距。
WPF应用程序在Windows下运行。浏览器应用程序也是如此,但区别在于WPF应用程序知道它。您可以构建一个WPF应用程序,该应用程序知道当前登录的Windows用户可以使用哪些资源。您可以构建可与文件系统,数据库和消息队列进行互操作的WPF应用程序。如果它们与Web服务互操作,HTML应用程序可以完成大部分工作,但这会引入更多的抽象层。
在一个非常真实的意义上,问题是,“WPF有未来吗?”真的,“Windows有未来吗?”毕竟,如果您不打算使用桌面应用程序,为什么还需要桌面操作系统?虽然我不认为这是一个问题,其回答必然是不言而喻的 - 也许ChromeOS,也就是Android,会让我们大吃一惊 - 我现在并没有失去很多睡眠。