用API 也可以。
如果要用复杂的图形界面,用许多“控制”(按钮,滑块,Edit, 树,色彩选择)那么用MFC比较方便,可以节省自己很大的工作量。
MFC函数很多,用到哪,可以查到哪,不用的不去管它。东西太多,不要学了再用,而是边用边学,用哪学哪,不用的不学。
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。
微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
Windows软件开发,不仅有C/C++、还有Java、C#,甚至JavaScript也加入了桌面应用开发的阵营......
C++方向
作为一名主业为C++的开发工程师,当然是首推C++了,用它来写Windows软件,还是很香的,这里重点推荐两个界面库。
Qt
这个也是C++界面开发首推的UI库,是一套跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序。文档齐全,API设计优雅,原生态跨平台支持,在国产化盛行的今天,相信Qt的市场也会越来越广阔。Qt新版本提供的QSS可以让你像Web当中CSS那样优雅的写界面布局代码。
下图是使用Qt内置的QSS绘制的一个界面换肤效果图,还是很绚丽的(PS:作品来源于CSDN,博主:一去丶二三里,如有侵权,请随时联系)。
MFC
虽然业界流传MFC=没饭吃、MFC要淘汰了......但是这么多年过去了,这玩意还是没有淘汰,只能说是落幕了,需求越来越少(然鹅,并没有绝迹)。
如果题主的需求是做一些自用的小工具,如果界面要求不是很高的话,那么选用基于MFC的Dialog对话框模式还是很方便的。无论是自用或者是他用,简单的将静态编译完成的exe发送给其他人就可使用,不用过多的依赖库。
温馨提示:
如果是选择就业方向的话,不建议选择MFC。
C#方向
微软主推的编程语言,与宇宙第一IDEVisualStudio配合的天衣无缝,通过简单的拖拽即可完成界面元素的布局。仿Java而生,目的就是取代Java,然而其结果是显而易见的,PC端程序开发已经落幕,在Web端,C#似乎跟Java不在一个重量级上。
考虑到微软的技术更新换代实在太快了,比如WinForm和WPF被全面移植到.NETCore。在这5G时代、人工智能、大数据各种浪潮的年代,实在没有必要再去追逐微软了。
JavaScript方向
考虑到题主的语言技术栈,主要偏向Web方向,开发Windows软件的话,隆重推荐下Electron。可以让你使用纯JavaScript调用丰富的原生( *** 作系统)APIs来创造桌面应用,大名鼎鼎的VSCode、Atom就是使用该开源库来完成的。让人们感觉JS真的有一统天下的趋势(Web、移动端、PC客户端)。
至于Java、PyQt之流,这里就不再推荐了。毕竟Python的设计初衷就不是让你来写Windows客户端开发的,而Java,重心也早已转移到Web端和移动端了,JavaSE开发的客户端程序已经很少见了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)