1) Limit JavaScript

a) inline JavaScript:  内联的JavaScript方法;
  1. 将js方法放置在Element内部; 2. 尝试将语句写在一行内; e.g.

Item {
function factorial(a) {
...
}
MouseArea {
onClicked: console.log(factorial(10)) //try to avoid the {brace};
}
}

b) 对于复杂的逻辑业务, 用C++代替JavaScript实现;

2) Clipping: 只有在必须的时候使用 Item.clip, 在painting的时候它会影响程序的效率;

3) Image:

a) 使用 Image.sourceSize 属性来将图片扩大以显示大图片, 这样可以省下大图片所占的空间;

b) 只有在必须的时候使用 Image.smooth.

c) 不要使用一大堆复杂的Element组合来画图, 提供一张IMAGE资源就可以简单有效地显示静态图像;

4) Anchors vs. Binding:

使用anchors比起把x,y位置根据互相关系固定起来的方式要有效率, 而且在左右互换或实现镜像的时候更合适;

5) Opaque Items: 如果一个Item被一个不透明的item整个遮盖住了, 把这个item的opacity设为0;

6) View delegatescacheBuffer 设定一定的值(根据具体情况选择大小), 把View里面的Item缓存起来;

由系统环境决定:

-Use showFullScreen() 全屏显示

-Use a different graphics system 更换一个图形系统;

Refer to: http://doc.qt.digia.com/4.7/qdeclarativeperformance.html  & http://cdumez.blogspot.com/2010/12/ways-to-improve-qml-performance.html

QML Performance的更多相关文章

  1. QML官方系列教程——QML Applications

    附网址:http://qt-project.org/doc/qt-5/qmlapplications.html 假设你对Qt的官方demo感兴趣,能够參考本博客的另一个系列Qt5官方demo解析集 每 ...

  2. QML Image Element

    QML Image Element The Image element displays an image in a declarative user interface More... Image元 ...

  3. Best Practices for QML and Qt Quick

    Despite all of the benefits that QML and Qt Quick offer, they can be challenging in certain situatio ...

  4. QML被系统缓存的原理是比较时间戳

    Gunnar Roth January 25, 2017 at 17:07 Afaik the cached qml file contains a checksum of the original ...

  5. qml 绘制高精地图之怀疑人生的加载速度

    绘制高精地图时需要gps的经纬度坐标,之前的实现方式是QGeocoordinate类的经纬度变量通过json的方式在qml中使用. 以画线为例,使用方式是这样哒. for(var i in vehic ...

  6. Performance Monitor4:监控SQL Server的IO性能

    SQL Server的IO性能受到物理Disk的IO延迟和SQL Server内部执行的IO操作的影响.在监控Disk性能时,最主要的度量值(metric)是IO延迟,IO延迟是指从Applicati ...

  7. Performance Tuning

    本文译自Wikipedia的Performance tuning词条,原词条中的不少链接和扩展内容非常值得一读,翻译过程中暴露了个人工程学思想和英语水平的不足,翻译后的内容也失去很多准确性和丰富性,需 ...

  8. Performance Monitor3:监控SQL Server的内存压力

    SQL Server 使用的资源受到操作系统的调度,同时,SQL Server在内部实现了一套调度算法,用于管理从操作系统获取的资源,主要是对内存和CPU资源的调度.一个好的数据库系统,必定在内存中缓 ...

  9. QML 从无到有 3 (自动更新)

    新的需求出来啦,需要自动更新功能,不怕程序升级了. 自动更新,QML不好写,需要c++来辅助,这里就涉及QML中调用c++功能(这里就不写了,百度一下,很多). 思路:获取版本>下载程序> ...

随机推荐

  1. Backward Digit Sums(暴力)

    Backward Digit Sums Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5664   Accepted: 32 ...

  2. Android应用中使用百度地图API定位自己的位置(二)

    官方文档:http://developer.baidu.com/map/sdkandev-6.htm#.E7.AE.80.E4.BB.8B3 百度地图SDK为开发人员们提供了例如以下类型的地图覆盖物: ...

  3. 【Android Tricks 6】ViewPager首页与尾页的滑动动作响应

    ViewPager能够说是Android应用中使用比較广发的一个组件了.它能够帮助我们非常 方便地实现滑动更换View的效果.刚好近期搞的一个项目有一个需求用到了这个,同 时是要能在首页和尾页滑动时可 ...

  4. Java线程之二 锁定与等待堵塞原理图

    如上图所看到的.

  5. Java设计模式--------建造者模式(Builder模式)

    Builder模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构 ...

  6. C#格式化成小数

    datagridview某列格式化成两位小数 ............................................................................. ...

  7. 3.C#/.NET编程中的常见异常(持续更新)

    1.Object reference not set to an instance of an object. 未将对象引用(引用)到对象的实例,说白了就是有个对象为null,但是你在用它点出来的各种 ...

  8. sql server 存储过程分隔split

    CREATE FUNCTION [dbo].[F_split] ( ), ) ) , ), f )) --实现split功能 的函数 AS BEGIN DECLARE @i INT SET @Sour ...

  9. FPGA开发(3)

    转载 榨干FPGA片上存储资源 记得Long long time ago,特权同学写过一篇简短的博文<M4K使用率>,文章中提到了Cyclone器件的内嵌存储块M4K的配置问题.文中提到了 ...

  10. VC/MFC使用OLE操作 EXCEL

    1.VC插入sheet页到指定位置 插入sheet的函数用 sheets.Add(Before, After,Count,Type) 四个参数含义如下: 四个const   VARIANT:      ...