关于问题微软的 WPF 技术为什么没有在桌面程序普及?一共有 5 位热心网友为你解答:
【1】来自网友【DKink】的最佳回答:
这个学习成本有点高,当初我学了 win API 和 MFC 开发程序后,觉得应该试试 WPF,最后一直用 MFC 没换过,没必要纠结,用 MFC 兼容性挺好的,写的程序从 win98 到 win10 都能运行。
【2】来自网友【toolne】的最佳回答:
个人觉得主要是:性能太低,对于电脑配置要求太高,编程思想有点超前。
当时弄自学的主要就是.net 那一套东西,所以不管是 WF,WCF,还是 WPF 都学过一阵,当时还是在学校,主要是通过图书馆借书来自学,那种很厚的红书,借了很多就照着敲。
对比 axml,如今的 react 的 jsx 不就是么,而且 axml 更加优雅,直接从语法成面支持。也就是说早了差不多五年,才开始在后面流行。也就是说当时已经有强化视图层的想法,当然后续还有很多*ml 的,我第一次接触就是 wpf,所以印象比较深刻。
其实,wpf 还是火了一段时间的,我记忆中有两点,一是毛玻璃效果,二是 sliverlight,前者意味着用 wpf 做出来的东西比当时其他比如 delphi 尤其是 MFC 开发出来的界面漂亮很多。后者主要对标 flash 在浏览器中运行。
由此也可知,wpf 在自家系统上使用,最终夭折,后者 flash 都面临淘汰,更何况 sliverlight。
我记得我当时是新买的电脑,配置也算一般吧,运行 wpf 的程序还是比较吃力。不过还是感谢微软,我毕业找工作的展示内容就用的是 sliverlight 来做的,做出来的东西在一定程度上给我面试加了分的。
只是工作之后,就不再是.net 那一套东西,基本上也就放弃了 WPF,不过在第二份工作的时候,要设计前端组件库,我当时从 WPF 获得了灵感,参考了其组件库设计。之后一直专注于前端,渐渐地对于 WPF 也就淡忘,也没有再关注。
WPF 所体现的主要还是将视图和逻辑分离,强化视图层,毕竟开发过程中经常变化和存在较大差异,需要定制的部分主要在视图层。从事前端这么多年,至今依然怀念 wpf 中组件设计的优雅,配合其拖曳生成界面,即使到如今,所谓的可视化,或者低代码平台,还是不能与之相比。
【3】来自网友【飞翔的城】的最佳回答:
门槛高了一点,理解 WPF 一定要有很深的面象对象基础,对.net 也要熟悉,还需要完全转换用户界面设计思想。模板、样式、绑定这些东西对高手来说是利器,对初学者来说就完全找不到北。
我现在的技术体系里只要有桌面界面一定是 WPF,其他完全不在一个等级上。
有一阵在国产化面前有点焦虑,好在.netcore 及时出现了,又找到基于.netcore 的 WPF 同类开源跨平台技术架构来实现国产化桌面 UI,有了底气现在就敢放心地继续用 WPF,移植成本可控,甚至
说不定哪天微软自己的 WPF 也跨平台了呢。
【4】来自网友【火星上的特斯拉】的最佳回答:
wpf 虽然是漂亮点,但是不容易上手,而且编译出来的程序对系统有要求,响应速度还很一般
【5】来自网友【人性与其他】的最佳回答:
当打开客户电脑,发现还在用 xp 的时候,默默地退回到了 MFC