雷火电竞 (中国) 官方网站

雷火电竞上位机软件开发开发语言首选C和C++谨慎选择Java和Python!|雷火|电竞
雷火|电竞

咨询热线

134421194632

Classification

雷火电竞动态

134421194632
传真:134421194632
手机:134421194632
邮箱:admin@dianpu51.com
地址:广东省广州市运城市盐湖区办公楼522室

雷火电竞上位机软件开发开发语言首选C和C++谨慎选择Java和Python!

发布时间:2024-03-07 02:11:27 丨 浏览次数:568

  做上位机程序,技术应该如何选型?我首选C#,其次是C++,Java和Python最好排除在外,如果还有其他开发语言,我的建议是能早换就早点换!否则到时候可能面临无人维护的尴尬局面。如果您所在的公司开发的上位机程序是第三方公司开发的,或者您的公司有意向找第三方开发上位机程序,那么如上所说,最好选择C#和C++。至于原因,接下来详述!

  为什么要排除Java和Python?的确,现在在工控行业的一些上位机程序是由Java和Python开发的,但是基本上使用Java和Python开发的都是MES系统。

  虽然MES系统也和下位机有关联,但是真正在生产的时候讲究数据实时性,或者需要对接一些如工业相机、PLC固件、IO卡固件等等,想要快速开发,估计很多硬件的SDK都不支持Java和Python。

  这不代表Java和Python就不能开发,只不过相比使用C#和C++,Java和Python可能需要自己“造轮子”。

  在这种情况下,如果没有一些代码积累,开发上位机程序用Java和Python开发上位机是很累的!

  雷火电竞平台 雷火电竞

  推荐使用C#和C++的主要原因就是目前几乎所有工业设备的SDK支持最多的,就是C#和C++两门编程语言,即使有部分设备的SDK支持了Java和Python,那也是部分。

  但是,有朋友会说:“我们公司使用Java和Python开发上位机程序已经十多年了!”

  但是,如果您找的第三方软件开发公司是这样情况,那我也不建议您和这样的公司合作,或者说您作为程序员,进入了这样的公司工作,那么我劝您谨慎!

  作为程序员,如果不小心进入了这样的公司,这样的公司之所以能活得很好,主要靠原始积累。换句话说,如果您在这样的公司里面使用Java或者Python开发上位机,您如果离开了这个公司,那么您可能需要重头再来。

  因为这样的公司之所以能够用Java和Python开发上位机,是过去踩过无数坑积累下来的现成对接硬件的接口,这些接口在其他公司里面不一定有。换句话说,这些“轮子”只适用这个公司。

  当然可以,但是您和您下一家公司可能会面临版权方面的问题。况且,每家公司的技术框架都是不一样的,抄上家公司的代码虽然可以,但是也是需要大动干戈的,比如说需要修改公司的软件架构!

  其实想知道选择C#还是C++其实还是蛮简单的,如果您作为甲方或者您是程序员,您所在的公司对于上位机软件的性能要求比较高的话,那么无疑C++是最好的选择。

  目前上位机软件使用C++和QT开发上位机程序,能够应对大部分对性能要求比较高且复杂的场景。

  但是,不代表C#这门编程语言效率就不高,C#其实是可以和C++一样直接操作内存的,只不过很少有C#程序员能够像C++程序员那样对于内存的控制得心应手!

  如果您不知道什么叫作性能,那么我可以打个比方,假设您的上位机程序需要走如下几步:传感器触发拍照——请求工业相机拍摄照片——对照片进行视觉算法——显示照片并显示算法结果——控制如PLC固件在内的硬件,并且,这些所有步骤需要在50毫秒甚至更短的时间内完成,技术选型选择C++无疑是最好的选择。

  不是说C#做不到50毫秒内完成所有步骤,只不过一般来说,C#想要做到高效率,对于程序员的技术要求还是挺高的!

  所以,如果您作为甲方或者贵公司开发的上位机程序对于效率要求不高,比如说几个动作5秒内完成就可以,那么选择C#是最好的选择!

  一般来说,一个合格的C#程序员的薪资几乎只有一个合格的C++程序员的一半,而且论开发速度,C#的开发效率却比C++要快一半。

  作为程序员,我们在进行技术选型的时候,要从公司要求方面考虑,到底是使用C++还是C#。

  而C#这门编程语言,技术框架是选择WinForm还是选择WPF,也是导致很多程序员比较近纠结的因素。

  其实也很好选,如果贵公司开发的上位机程序需要炫酷的界面,想要实现一些类似网页程序的效果,比如一些智慧园区,可能要显示Gis地图或者三维效果,或者需要一些炫酷的动态效果,那么一定要选择WPF。

  虽然这些WinForm也能做到,但是大多数WinForm开发的程序都会比较“素”,而且WinForm对于透明控件的支持不是太好,想要支持炫酷的效果和透明,无疑要废一番功夫,而对于WPF来说,这是信手拈来的事情。

  但WinForm并不是一无是处,首先WinForm程序员比WPF程序员便宜,而且,WinForm的开发效率是要比WPF快很多的,对于一些第三方工业控件,支持WinForm的也要比支持WPF的要多很多。

  不光如此,因为WinForm相对自由的GDI+,只要玩得还可以,基本上可以自由绘制任何形状的图形和控件!

  考虑上位机性能,C++是上位机开发语言的首选,考虑上位机的界面效果,比如说需要实现一些炫酷界面,C#的WPF更加适合!

  在不考虑上位机性能,且对上位机的外观效果不是太有要求的,对开发效率、开发成本有要求的,C#的WinForm无疑是首选技术框架!

  雷火电竞平台 雷火电竞

Copyright © 2017-2023 雷火电竞集团有限公司 版权所有
电 话:134421194632    手 机:134421194632   传 真:134421194632    E-mail:admin@dianpu51.com
地 址:广东省广州市运城市盐湖区办公楼522室
浙ICP备16027886号

扫一扫关注微信公众帐号

免费咨询 投诉建议