
首先个人觉得不能说哪种语言比较好比较流行,在一个平台下开发软件,是根据软件的要求来选择具体的语言,当然“懂技术”的甲方有时候也会“要求”你用哪种语言:)
Windows平台下,具体说:
1、如果性能有限,稳定性优先(甲方也不差钱),那当然最好就是用C/C++;当然说到这里又不免要争论一番到底是用MFC还是QT。。嗯,要我这个骨灰级的来说呢,,我的心中只有MFC。。:)
2、如果是考虑开发效率和稳定性,那么C#是最好选择,,真是方便啊!但悲剧的C#程序猿的工资,,,不说了,说多了都是泪:(
3、如果手下技术比较上不了台阶,那不妨搞搞Delphi,甚至VB,,不过这两个现在号偏门。。
4、如果大量的复杂计算,还要画图,还要外部调用各种古怪的系统,而且还不在乎跑的慢。。。那么,恭喜你,matlab,python是个好选择。
5、哎,手下实在没有合适的人,只有一堆做web的,能做C的也就我这几个老东西,而且客户也不那么在乎性能。。。那么,恭喜你,你有了低成本好选择,你可以用electron这个神器,简单低成本漂亮!还可以用C来做混合编程搞定密集运算部分!
其他诸如Java之类的你就看着用吧:)
如果开发时间周期少,界面要求高,选c#或.net其它
如果可以有较长开发周期,且对程序执行效率要求高,图形图像处理复杂,选C++,(vs、QT、Clion、DevC++、Code::Blocks均可开发)
如果涉及算法较多,选Python
如果要考虑今后需要跨多种平台托展,选Java或Python。windows的C++程序如果要转Linux,也可转,但若不是用QT等开发,会有一些改动,尤其如果是MFC框架开发的程序转Linux,改动不小。
编写windows的窗口化程序就需要调用windows提供的API。可以通过大概3种办法:
一是学习win32API就是windows为开发者提供的接口,需用C++语言来调用。
二是学习MFC,MFC是微软提供给开发者的一个类库,以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。三是你可以学习C#语言,C#语言生成面向.net的环境代码,也是可以实现可视化窗口程序的。至于IOS这个你可以查看IOSAPI帮助文档,里面会有一些例子。android开发需要用androidSDK当然android开发需要用到JAVA语言所以还需安装JAVASDK。编辑器可以用Eclipse。
目前,商业客户端如果需要保密一般用C/C++。
以前还有VB、Delphi啥的,现在越来越少了。
.NET、Java之类容易被逆向。
我是从老VB6(非.net的)、Delphi开始学起的,现在都已经逐渐淘汰了,用的人也是越来越少了,我觉得主要看你开发什么样的软件来选择语言,我个人推荐C#或者C++。
C++一般用于开发个人应用,大多数的通用商业程序都是C++开发的,比如迅雷影音。而C#更多用于企业应用,更适合快速开发,调用API,COM组件,DLL都很方便,便于团队合作和使用第三方代码。以前缺点是部署必须带运行库或者用户安转.net依赖,现在win7以上系统已经自带了,况且c#上手比较简单,学习难度小,跨平台容易,首选c#。
其它还有像国产的e语言,中文编程概念方便的很多初学者学习,编写一个进销存的简单软件也可以。
建议用微软的.NET比较好,其实有很多,开发高性能的就用VC
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条)