Windows程序设计:MFC 、Winform 和 WPF 比较[通俗易懂]

MFC生成本机代码,自然是很快,可是消息循环减缓了界面显示速度。WinForm封装了win32的api,多次进行P/invoke操作(大部分使用p/invoke操作封装),速度慢。WPF是一种新的模型,不再使用win32模型,自己新建模型,使用dx作为新的显示技术,直接访问驱动程序,加快了运行速度,可是,这种模型,需要支持dx9的显卡,硬件要求高(你还能找到现代机器不支持dx9的吗?)…

大家好,又见面了,我是你们的朋友全栈君。

MFC生成本机代码,自然是很快,可是消息循环减缓了界面显示速度。

WinForm封装了win32的api,多次进行P/invoke操作(大部分使用p/invoke操作封装),速度慢。

WPF是一种新的模型,不再使用win32模型,自己新建模型,使用dx作为新的显示技术,直接访问驱动程序,加快了运行速度,可是,这种模型,需要支持dx9的显卡,硬件要求高(你还能找到现代机器不支持dx9的吗?)

开发效率上,MFC < WPF < WinForm

尽管MFC开发界面执行效率高但是开发效率低,作为现在的项目开发来说时间跟开发效率往往能决定项目的成败,所以除非有特别的需求,否则都回尽量避免用MFC来做开发,MFC只是一个弱封装器。

开发成本,MFC > WPF > WinForm

用MFC开发成本太高,对开发者能力要求更高,作为客服当然希望开发的费用越少越好,开发者当然希望钱赚得越多越好,这样一比,这也是MFC没落的一个很大的原因。

界面执行效率上,MFC == WPF > WinForm

随着计算机硬件的性能提高,多核cpu的普及,它们的差距会越来越小。

开发灵活性上:WPF > MFC > WinForm

美观上:WPF > WinForm > MFC

这一项中MFC下要开发出一个华丽的ui极其困难,也许你可以说你可以用控件,但是商业开发控件是要收费的!!MFC要写出这种效果不知要写到何年何月。这样一来MFC存在的价值就更低了。效率和美观不如WPF,开发效率又不如WinForm。

内存使用上:WPF > WinForm > MFC

随着计算机硬件的性能提高WPF这个缺点会被忽略。

使用范围:WPF > MFC == WinForm

有以上可知:WPF大有取代WinForm和MFC之势,从未来net的发展来看,MFC以后只会变成一种经典,作为一种技术来供开发者学习,WinForm和WPF两者会并存发展,但最终都会被WPF取代,最终实现桌面应用程序和浏览器应用程序的统一。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128914.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sop流程图模板_这是一份标准作业流程SOP详解,附流程图绘制规范,不愁不会画!…「建议收藏」

    sop流程图模板_这是一份标准作业流程SOP详解,附流程图绘制规范,不愁不会画!…「建议收藏」注:资料来源百度、档即用网,品质人生质量开讲平台搜集、整理、编辑,仅供学习交流所用,请勿做其他用途!小编辛苦整理,转载请注明出处。什么是SOP?StandardOperationProcedure所谓SOP,是StandardOperationProcedure三个单词中首字母的大写,即标准作业程序。是以文件的形式描述作业员在生产作业过程中的操作步骤和应遵守的事项;是作业员的作业指导书…

    2022年5月26日
    170
  • 一周信创舆情观察(12.7~12.13)

    一周信创舆情观察(12.7~12.13)一、一周舆情要点行业方面,2020年集成电路设计行业销售额预计为3819.4亿元,比2019年的3084.9亿元增长23.8%。日前,我国自主研发的一项物联网安全测试技术(TRAIS-PTEST)由国际标准化组织/国际电工委员会(ISO/IEC)发布成为国际标准。拉勾近日发布人才白皮书,至2020年底我国新基建相关核心技术人才缺口已达426万。国际方面,微软为ARM版本Win10推出64位模拟器。欧盟新法规定,超大型科技公司需监督互联网,否则罚款年营业额6%。近日,思科和英国云通信软件公司IMImo

    2022年5月10日
    44
  • 关于最短路径算法的理解

    关于最短路径算法的理解“最短路径算法:Dijkstra算法,Bellman-Ford算法,Floyd算法和SPFA算法等。​从某顶点出发,沿图的边到达另一顶点所经过的路径中,各边上权值之和最小的一条路径叫做最短路径。”我们解决最短路径问题,常用的是Dijkstra与Floyd算法Dijkstra(迪杰斯特拉)算法他的算法思想是按路径长度递增的次序一步一步并入来求取,是贪心算法的一个应用,用来解决单源点到其余顶点的…

    2022年5月28日
    30
  • Navicat 15 激活补丁破解方法

    Navicat 15 激活补丁破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    128
  • 微信公众平台开发(十) 消息回复总结

    微信公众平台开发(十) 消息回复总结一、简介微信公众平台提供了三种消息回复的格式,即文本回复、音乐回复和图文回复,在这一篇文章中,我们将对这三种消息回复的格式做一下简单讲解,然后封装成函数,以供读者使用。二、思路分析对于每一个POST请

    2022年8月5日
    6
  • 年龄大的普通程序员最后的出路是哪里?[通俗易懂]

    年龄大的普通程序员最后的出路是哪里?

    2022年2月11日
    57

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号