使用Qt开发跨平台桌面应用时,应该选择widgets还是qml?


以下文章来自知乎:


2015年11月:

作者:秋城 ; 链接:http://www.zhihu.com/question/34570556/answer/62517595 ;来源:知乎

如果是桌面平台,劝题主还是使用Widgets。也别搞QML为主,widget为辅这一套了。不够麻烦钱的。不知道@韦易笑 这么推荐是从哪方面考虑的。而我的理由如下:

1,QML只适合写界面。绝大部分的逻辑还是要靠C++的,而QML和C++通信部分是蛋疼的(不难,但是确实蛋疼,各种Invoke)。假如你一部分逻辑用js,一部分用C++,到后期维护起来,估计就想买后悔药了。
2,QML成品控件太少,稍微复杂的控件都要你自己写。没有第三方控件。而widgets有非常多的选择。
3,QML没法调试,开发效率没有吹的那么高。大多情况下,你面对的其实是一个TXT文档,而运行效率则有点呵呵(内存/CPU你可以写个例子看看)。---
4,如果你想用QML做移动平台的开发,那你要考虑到跟系统的原生样式匹配问题。
真心不明白QML的定位。


其他:   桌面应用建议用widget。移动设备才用qml。

其他201608:    qml比较炫吧。比较适合移动端开发。widget对于pc端比较合适。兼容性更好

其他:    QML用来完成界面有可能会经常需要变化,不复杂的项目,移动设备上用,PC程序很多时候太复杂,QML不适合

其他2014:  qml是一种全新的语言,对熟悉javascript的用户,该语言比较容易上手。QtQuick 与 QtWidgets 是两套不同的做界面的东西,QtQuick2 是基于OpenGL的,而QtWidgets不是。前者潜力更大。随着组件的完善,前者会慢慢取代后者(但目前,前者在桌面应用上还不成熟,主要就是QtWidgets中的很多控件,QtQuick还没有,已经有的,稳定性可能也不太够)。不过,鉴于传统的Qt的用户都是C++出身,对qml的接受度有时可能不太高。




评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值