我的长期目标是为嵌入式设备开发HCI,而我说的是嵌入式,而不是手机设备。
我已经在Qt部件上工作了一个月了,出于一些原因我一直在回避QTQuick(我担心QML代码没有被优化),但是昨天我看了这个视频:YouTube
演讲者最后说:“如果你现在正在生产嵌入式产品,那么就使用QtQuick,尤其是在5.8版。没有理由不使用Quick。”
相反,他解释说,对于嵌入式设备,我们应该使用c++代码,而不是JavaScript。
我不太明白,这是否意味着我必须用c++代码创建我的所有对象,并使用QtQuick构建我的体系结构?
我真的不明白Qt想让我们做什么。这仅仅是通信,因为他们不想优化老的和稳定的Qt小部件,还是QtQuick真的是嵌入式设备的解决方案?
我个人认为,Qt并不是嵌入式设备的解决方案,因为它们在不断发展和改变策略,而且似乎不知道它们将走向何方。
我为这个非算法的问题道歉,并感谢你所有的回答。
发布于 2017-06-09 00:28:36
我不能谈论开发人员的意图,也不能代表其他开发人员。作为一个已经设计了40年嵌入式设备的开发人员,我只能说我理解的东西(抱歉,我是个数字滴管)。
C++还是JavaScript?我不觉得这个问题与你是否使用QtQuick有太大关系。当然,您可以在QML代码中嵌入一些JaveScript (有限制),但也可以在相同的代码库中使用C++ (只是不嵌入在QML中)。还有Python。Qt和QtQuick都是编程框架,在某种程度上与语言无关。
我的观点是,QtQuick是一种很好的、可移植的创建用户界面代码的方法。在我当前的项目(一个多轴工业伺服控制系统)中,我使用QML作为用户界面(在需要时使用一些JavaScript ),C++用于更高层次的处理(如网络控制和数据流),C和汇编语言用于较低级别(在uC和DSP中执行的那些例程)。在我看来,QML和C++界面很好地结合在一起。
发布于 2017-10-22 20:09:31
我相信演讲者认为,大多数(如果不是全部的话)业务逻辑应该使用C++模型后端来完成。但是,可以使用嵌入式JavaScript在QML中完成所有的逻辑,因为JS是一种解释语言,它在运行时的性能可能低于已编译的C++代码(取决于C++编写得有多好)。
本质上,您只想使用JS来操作图形组件,同时使用C++和QObject模型来更新QtQuick元素的各个属性。
在QtQuick最佳实践wiki,实践中提到了这一点
https://stackoverflow.com/questions/44431509
复制相似问题