现在MFC还流行吗

更新时间:02-09 教程 由 南鸢 分享

现在MFC还流行吗?

以下内容给小白观看,不做技术之争。

用过MFC之后的工程师再去用其他的技术,框架,如Qt,WPF 之类的,都会觉得非常友好。当然后面这俩现在也没多大的动静了。

11年的时候,智能手机不像现在尚未普及,开发给普通用户使用的软件,大部分都集中在PC电脑端,而用户系统绝大多数是Windows,所以如果要开发一个普通用户在电脑上用的应用程序,比如一个杀毒软件,一个邮件工具,就要做成一个exe格式的可执行文件,用户双击即可打开。

那时候开发人员首选的就是微软的visualStudio系列开发套件,不得不说这个是傻瓜式,超赞的开发工具,可以选择创建纯窗口应用,也就是那种打开后一个黑洞洞的命令行看着跟黑客帝国一样哗啦啦跑运行信息的,也可以创建带用户界面的应用,此时大多数人首选就是MFC框架,这毕竟是微软官方提供的库,当然也有高手喜欢用跨平台的Qt,那这个不在我们的讨论范围。

回到MFC,它提供了非常标准的控件,举个例子,比如说我们要做一个简单的某某管理系统,你要编辑用户姓名用编辑框。要选择性别可以用单选框等等,这个思路跟安卓iOS开发是一样的,提供标准控件拿来开箱即用。

在Windows应用开发中,用户可以自定义消息进行传递和处理,系统自身也会有大量的系统消息。比如,用户鼠标左键点击事件,窗口缩放事件,键盘按钮按下和起来事件,那么这些事件可以被捕获进而处理。

MFC是非常优秀的框架,但是相对于JAVA和Python等语言,上手的难度要高,学习曲线相对陡峭。记得当初为了做一个漂亮的界面出来,当时自定义了很多控件,重绘了控件的外形和事件。比如要做一个透明按钮,一个带光晕的按钮。需要接管系统gdi绘图,处理各类传导到控件里的消息,为了做出mfc的漂亮界面,还要去深入了解下一些相对底层一些的东西。

当初为了做界面,我们还深入研究了大神们自己开源的duilib,以及迅雷放出来的一个界面库。

那么这样一来,也就是说开发人员需要花费大量的时间和精力去研究非业务层的东西。这个对于企业来说,是生产力和效率的低下。同样一个给所有订阅的用户发通知邮件的功能,你用Python和JAVA来做直接用现成的邮件库只要几分钟,你用c++试试你要多久?这是开发效率决定的。

另外一点也很恐怖,c++的一个特性决定了菜鸟是很难驾驭它的,就是内存管理,谁申请谁释放。如果你使用了第三方的界面库,刚好这个库的作者在某些地方申请了内存,一点一点内存泄露没释放,时间长了内存占用越来越多,系统就崩溃了!所以以前很多电脑桌面应用程序用着用着就卡死了,不动了,然后就把电脑都拖死机了。而JAVA,内置强大的垃圾清理体系,很多JAVA程序员搞了几年都不知道还有内存分配一说,你说,是不是轻松了好多?这是产品的安全性和稳定性决定的。不是这门语言不好,而是真正能用好它的人太少。

再加上移动互联网的浪潮过来,Pc端的应用已经没有太多的增长了,上一个现象级的非游戏类PC应用你说的上来吗?

再加上现在网络的提速,web交互技术的发展,很多本来cs架构的系统都升级到bs架构,不需要做桌面应用程序,当然无需安装,无需上门维护,不会闪退崩溃,也不需要考虑系统的兼容性,开发成本低,开发效率高。

种种因素结合,MFC逐渐式微不是没有道理的,但不能说是因为这个语言框架或技能不好,而是时代在前行和发展。

计算机语言也是一样,有一些会被遗忘在历史长河,有一些如erlang这种被遗忘多年了却又因为大数据兴起而又被重新引发兴趣的。

语言都是工具,工具的目的都是为了快速解决问题,流行是因为当前的环境和时机需要它。如果感觉不流行了,也要赶紧找到当前的大趋势,否则,空有屠龙之术,没有施展之地。

声明:关于《现在MFC还流行吗》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2205765.html