84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
请教一下大牛,最近需要开发一个windows程序,选型是用QT 但是在语言上犯难了,是PYTHON (PYQT)还是C++ ,想知道这两张开发出来的程序,在语言区别以外,还有没有其他大的区别 备注:比如客户端程序的打包安装上面,哪个较便捷,依赖少,更容易独立安装
走同样的路,发现不同的人生
我建议你可以从下面方面衡量你应该如何选型1) 该客户端是否“比较复杂”,也就是说代码量是否比较多,如果代码量比较多的话,反而建议你上Qt,因为Python语言代码量上去的话,还要匹配相当数目的单元测试,保证你每次迭代和加功能时,不会破坏以前的代码,对于生手特别是没有比较丰富经验的人来说,维护这么大的代码也是个问题。2) 是否会调用其他的类库,比如有其他的C++封装的dll,如果是的话,Qt,否则PyQt。3) 你的代码是否需要考虑版权的问题,除去Qt商业版收费的问题,你自己的代码是否需要做一定的知识产权保护,也就是加密,像PyQt这种基于python脚本语言的类库,在代码保护方面做的不是很好,你的代码对于熟悉pyc格式的人,基本上是完全暴露的,而且这样的逆向工具也很多。4)你是否需要考虑性能,python受制于GIL,对于CPU敏感性的计算,速度比较慢,你是否能接受。5)你的开发周期是否比较充裕,如果开发周期很短,建议上PyQt,否则Qt.6) 客户端打包都有比较成熟的技术,PyQt用cxfreeze, Qt用installer。7)对于你和你团队,大家更熟悉C++还是python
如果你对上述问题能比较清楚的回答,相信你选择什么方案,心里也就有数了
Qt开源版的协议要求使用Qt的项目也必须开源,否则就是侵权。另外Qt和PyQt的商业授权要分别买。
如果你买商业版的话,PyQt和C++基本没区别。开源授权的话PyQt没有Qt Charts的支持。另外PyQt用不了许多C++写的第三方Qt控件。
我建议你可以从下面方面衡量你应该如何选型
1) 该客户端是否“比较复杂”,也就是说代码量是否比较多,如果代码量比较多的话,反而建议你上Qt,因为Python语言代码量上去的话,还要匹配相当数目的单元测试,保证你每次迭代和加功能时,不会破坏以前的代码,对于生手特别是没有比较丰富经验的人来说,维护这么大的代码也是个问题。
2) 是否会调用其他的类库,比如有其他的C++封装的dll,如果是的话,Qt,否则PyQt。
3) 你的代码是否需要考虑版权的问题,除去Qt商业版收费的问题,你自己的代码是否需要做一定的知识产权保护,也就是加密,像PyQt这种基于python脚本语言的类库,在代码保护方面做的不是很好,你的代码对于熟悉pyc格式的人,基本上是完全暴露的,而且这样的逆向工具也很多。
4)你是否需要考虑性能,python受制于GIL,对于CPU敏感性的计算,速度比较慢,你是否能接受。
5)你的开发周期是否比较充裕,如果开发周期很短,建议上PyQt,否则Qt.
6) 客户端打包都有比较成熟的技术,PyQt用cxfreeze, Qt用installer。
7)对于你和你团队,大家更熟悉C++还是python
如果你对上述问题能比较清楚的回答,相信你选择什么方案,心里也就有数了
Qt开源版的协议要求使用Qt的项目也必须开源,否则就是侵权。另外Qt和PyQt的商业授权要分别买。
如果你买商业版的话,PyQt和C++基本没区别。开源授权的话PyQt没有Qt Charts的支持。另外PyQt用不了许多C++写的第三方Qt控件。