本帖最后由 wenluderen 于 2022-12-6 10:38 编辑
1)每个行业 都会针对自己的需求特点,选择合适的开发语言, 架构,合适的轮子, 开发环境
2)目前行业 应用范围最广的应该是Java 以及配套的东西, 以我了解,这个语言(及其相关的轮子)都是比较简单,开发也是比较快速, 而且可以跨平台。
java 可以开发移动端程序,也可以开发桌面程序, 可以开发 Windows系统下的程序,也可以开发 IOS相关, 也可以liunx 或Unix的程序, 按理说,他这么强大,
应该在横扫千军,一家独大的, 但是 他有一个致命的缺点 ,就是运行速度慢,所以我们这些干机器视觉, 就不可能选择他。
3)为了对抗Java , 比尔盖子 找了大神安德斯·海尔斯伯格, 发明了C#(念Sharp),C#目前的情况大致也是知道了。发展还是不错的
C#相关的轮子和架构(或者叫平台)也很多, UI相关的就是 winform 和WPF 。
另外, C# 的运行效率 应该是高于java 。 这个基本是共识
4)C#的运行效率 虽然高于 Java ,也比较简单,那么 是否 我们就可以让 一个视觉程序完全用C#做呢? 目前看不是不行的, 比如线扫项目, 就对代码执行效率要求很高
所以还是绕不开C++
5)既然绕不开C++ ,那么是否 可以C++ 做逻辑, 然后QT 做UI呢? 我觉得不可以, 一方面 QT的开发环境,非常的不友好, 就是垃圾。 而且需要学习,直接用VS 可以减少学习成本。
6)说了这么多, 最终结论是似乎呼之欲出了, 就是C++ 做逻辑 然后C# 做UI。
7)C# 做UI 又有两个选择,一个 winform , 一个是WPF。该如何选择呢? 我经过一番比较后选了, WPF
8)最后的最后, 就是 C++ 和C# 如何交互 , 是个难题, 我这边有两个方案, 一个是野路子, 一个常规路子
9)野路子,C++一套程序, C# 一套程序, 然后基于内存交换。 常规路子,就是所谓的封装调用。
10) 有一个UI 叫MFC, 这个需要提一下,这个东西 比较古老,至少是十年前的东西。这个东西的是非常难的, 非常难的,非常难的。
但是开发的效率应该是非常高的,目前微软公司基本不在维护这个。
|