Qt5.9 官方发布的新版本亮点的确不胜枚举(而且修复2000+ bugs)
链接:https://www.zhihu.com/question/60486611/answer/177584284
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
5月31号Qt正式发布了新版本5.9,声明修复了大量的bug(2000多个?!),增加了大量的新特性,并且更稳定。
这是2015年5.6版本之后的一个LTS(长期维护,long term support)版本。 意味着在3年标准支持期内将分阶段不断提供对此版本的修复与维护,即使也会有其他新版本发布。所以这或许是一个适合开发者们开发长期项目的一个版本。
个人认为新的长期项目的开发是值得尝试从5.9开始的,但近些年的几个5.x版本中还仍有大量p2甚至少量p1级别的bug没有修复,仍有不少早期版本稳定开发的开发者迟迟无法迁移到新版本。所以享用新特性和接受潜在的未知风险还需要根据项目的要求以及侧重点进行权衡。
官方发布的新版本亮点的确不胜枚举。。
比如Qt 3D,增强对 3D图像及动画的支持,更容易与Qt Quick相结合。 并支持多种3D几何格式的插件。
比如QML性能的提升,Qt Quick Controls 2的功能增强,还有基于openGL shader cache 对QML进行类型缓存, 以及.qml / .js文件生成的代码和数据结构的缓存的支持。 这些功能将大大提高使用Qt构建的设备的启动速度。
发布新Qt Creator 4.3.0,Quick Designer里面也看以同时看到和编辑qml code了! 作为Qml项目开发者确实立刻感到了方便!
<img data-rawwidth="1399" data-rawheight="940" src="https://pic4.zhimg.com/50/v2-c3899b2daca29baf5074b42082734794_hd.jpg" class="origin_image zh-lightbox-thumb" width="1399" data-original="https://pic4.zhimg.com/v2-c3899b2daca29baf5074b42082734794_r.jpg">
还有新框架将允许Qt团队更容易创建新版本,包括修补程序和发布次要版本。 引入自动化性能回归测试,使得对Qt的监控与提高加强。
安全方面,Qt 5.9正式支持INTEGRITY RTOS。 确实越来越多的RTOS应用程亟需要更高级GUI框架来满足用户期望呢。
操作系统和硬件方面,Qt 5.9完全同时支持传统的Win32应用程序和通用App,支持Win 10的所有配置(Windows 10,Windows 10 IoT Core,Windows Mobile)。 另外还提供了对QNX 7和iMX.7的支持。(本段是官方声明的逐字翻译。作为跨平台神器,每个版本支持的系统与平台均不一样,有兴趣的请去看官方日志。我目前只使用linux Qt,关于windows平台版本的问题不要再问我啦。)
还有完全支持C ++ 11, 支持Wayland多进程, 提升了Qt Lite, 提升了Qt串行总线模块用于设备总线通信(CAN&ModBus)的通信功能,全面支持Gamepad,增加了新模块Qt remote object,还有Web,Network,定位等内容的一些更新。
总结就是眼花缭乱的新特性确实很有亮点,但并不是每个项目都有需要,旧版本仍存不少令一些开发者们很不满意待解决的问题,但对Qt来说优先级不高并且修复可能会导致牵一发而动全身。所以说寻求新特性与安全稳定的平衡,还需Qt团队和每一位开发者共同努力。
Qt5.9 官方发布的新版本亮点的确不胜枚举(而且修复2000+ bugs)的更多相关文章
- 官方发布的新版本Qt已经不支持XP了,要自己从源代码编译
官方发布的新版本Qt已经不支持XP了,要自己从源代码编译,编译选项里有个-target项,用来提供XP支持的,编译时加上-target xp就可以了 http://www.qtcn.org/bbs/r ...
- Delphi C++Builder RAD XE Ver 版本 官方发布时间
RAD 新版本发布时间记录 代号,官方发布时间 RIO 10.3.1,VER330,Product Ver 26 Program File 20,2019.2.14 发布 24周年 RIO 10.3, ...
- MIP 官方发布 v1稳定版本
近期,MIP官方发布了MIP系列文件的全新v1版本,我们建议大家尽快完成升级. 一. 我是开发者,如何升级版本? 对于MIP页面开发者来说,只需替换线上引用的MIP文件为v1版本,就可以完成升级.所有 ...
- 苹果官方发布,iPhone 6 & Plus 设计素材
苹果发布 iPhone 6 和 iPhone 6 Plus 有一段时间了,据说首日预定量达到了创纪录的1600万部,真是不可思议.苹果已经创建了一些指引,让开发者可以受益.他们已经发布了一组苹果官方的 ...
- 封装对MongoDB数据库的增删改查访问方法(基于MongoDB官方发布的C#驱动)
本文利用MongoDB官方发布的C#驱动,封装了对MongoDB数据库的增删改查访问方法.先用官方提供的mongo-csharp-driver ,当前版本为1.7.0.4714 编写数据库访问帮助类 ...
- 知名KMS模拟器的官方发布网址
些知名KMS模拟器的官方发布网址: 本机自激活安装类KMS激活软件,容易在系统升级中被查杀失效,且在软件传播过程中极易被捆绑植入后门.病毒,不推荐尝试. Windows Loaderhttps://f ...
- 【Asphyre引擎】发布了新版本V101
引擎简称还是PXL,但是这个P是Platform而不是Pascal. 修复了一些bug,增加了轻量级的随机数发生器,进一步完善了XML的解析. 不是很明白,为何把Pascal扩展库改成Platform ...
- [转帖] 红帽8.0 beta版本发布 内核新版本 4.18
Red Hat Enterprise Linux 8 Beta 现已发布! https://www.oschina.net/news/101870/red-hat-enterprise-linux-8 ...
- Unity官方发布热更新方案性能对照
孙广东 2016.3.11 Unity应用的iOS热更新 作者:丁治宇 Unity TechnologiesChina Agenda • 什么是热更新 • 为何要热更新 • 怎样在iOS 上对 ...
随机推荐
- C++学习笔记(达内视频版)
达内C++(陈宗权主讲) 第一天: 课程分为Core C++(标准C++.不依赖操作系统)和Unix C++. 1.配置bash,运行.sh文件. vi bash_profile 在"pat ...
- POJ 1833 生成排列
题目链接:POJ 1833 /************************************ * author : Grant Yuan * time : 2014/10/19 16:38 ...
- Android系统开发(5)——Eclipse for C/C++
一.下载JDK 官方下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 二 ...
- Iaas、Paas和Saas的区别
Iaas: Infrastructure-as-a-service(基础设施即服务),Iaas上购买的一般是主机,用户不光要开发程序,还要考虑搭建系统,维护运行环境,以及怎么容灾,怎么做到高可用,怎么 ...
- 18、x264编码在zedboard上的实现(软编码)
一.x264开源包获取 x264-snapshot提供了开源x264源代码,已经在X86和ARM架构下均已实现.linux下可以使用git获得最新的代码包 git clone git://git.vi ...
- 简要分析unity3d中剪不断理还乱的yield
在学习unity3d的时候非常easy看到以下这个样例: void Start () { StartCoroutine(Destroy()); } IEnumerator Destroy(){ yie ...
- [ES7] Handle Errors in Asynchronous Functions
This lesson shows how regular control flow statements such as try/catch blocks can be used to proper ...
- 仿凤凰时时彩代购平台源代码[ASP+MSSQL]完整下载
源代码简单介绍 : 适用范围: 时时彩源代码,时时彩程序,开奖平台源代码,投注平台源代码,仿凤凰时时彩源代码 执行环境: ASP+MSSQL 其它说明:仿凤凰时时彩代购平台源代码.网上售价8000 ...
- mysqldump 不需要密码
-p 参数比较特殊,正确语法是 -ppassword,即-p和密码中间不能有空格. 请教:数据库备份命令如果这样写mysqldump -u root -p dataname>/home/data ...
- Android改变图片颜色的自定义控件
效果如下: 理解:Xfermode的16总模式如图 第一步: package com.rong.activity; import com.rong.test.R; import android.con ...