QML vs WEB

 

UI领域, 若是是桌面应用,QML能够更快速。若是是手机UI,H5绝对占优。性能

移动设备已经为各行业的HMI的响应性和用户友好性设定了标准。汽车,医疗设备,工业自动化系统和消费电子产品制造商如今但愿为其嵌入式设备复制这种出色的用户体验。想找出咱们应该选择哪一种技术策略,其实咱们彻底能够作一个测试,一位开发人员被分配160小时,使用Qt和QML 建立嵌入式系统的演示应用程序,使用相同的小时数来建立使用HTML5的等效应用程序。测试



毕竟Qt提供的那一套控件库更适合桌面应用,而当年诺基亚都开发了塞班和米果的QML手机控件库,如今Ubuntu,旗鱼,黑莓都有本身的QML手机控件库。 


渲染性能上。QML有绝对统一的接口规范以及渲染机制。(跨平台是这样的)。 H5桌面系统一套,就谷歌作的好。手机WebKit嗯,可是系统对WebKit的支持也不能说表现同样。


接下来我来讲说QML吧。 QML的执行引擎是基于Qt的V4引擎,V4最大的改变就是添加了类型。ui

添加了类型让QML的属性绑定相比于以前的版本(Qt4的QtQuick 1.x)有极其大的提高。 属性绑定(数据绑定,表达式绑定)。嗯,在QML中随处可见的属性绑定,虽然有H5中有相似数据绑定的JS库。但QML语法上就支持了。 

QML的渲染方式相较于以前的版本也有了重大的更新。 以前的版本(Qt4的QtQuick 1.x)更接近widget,虽然是Griphics/view,可是渲染更可能是优先提交给cpu处理。固然,在N9(嗯,第一个彻底使用QML构造应用的系统),会使用gpu,有硬件加速嘛。 


如今的QML渲染方式更倾向于优先使用显卡。(因此如今使用QML须要良好的显卡支持,例如正确安装显卡驱动)。
简单扯扯如今QML的渲染绘制机制吧。 
 spa


1. 基于事件的,基于Griphics/secen 

2. 有两个线程,一个绘制,一个渲染。

3. cpu负责绘制,gpu负责渲染。 

4. 当须要重绘时,绘制线程暂停,渲染线程进行渲染,渲染完毕,绘制线程启动,绘制。 线程



嗯,上面那个我是看Qt英文文档,本身理解的,叙述有出入。 此外,Qt正在开发的Qt3D,类比WebGL,其性能以及可部署性远大于H5的WebGL,嗯,是个重型武器。其实也反应出了QML渲染和绘制的效率。接口

相关文章
相关标签/搜索