Qt5 结构及模块组成?

17 篇文章 9 订阅
  • 作为一个Qt的粉丝,对将于明年发布的Qt5充满了期待。可是想想Qt5将发生的巨大变化,心底又有点不安。Qt5到底会变成什么样呢?

看看近期Qt5的一些大动作:

  • 从 QtCore中移除 QSettings以及对QSettings的依赖(创建独立的模块?)

  • 从 QtCore中移除 QtConcurrent(创建独立模块?)

  • 将 QJSEngine 和 QDeclarativeEngine 放入 QtCore

  • 从 QtGui 中分离出 QtPrintSupport,保留pdf生成功能

  • QtCore 添加 zip 文件的读写功能

  • ...

Qt5 结构

Qt Essentials

在所有平台可用

Qt Tools

Qt的不可分割的组成部分,在所有桌面平台可用

Qt Add-Ons

可跨平台,也可不跨

其他模块和工具

第三方?

Qt5 的基础模块(Qt Essentials)

Qt Core

 

Qt Network

可能会集成到 Core

Qt Gui

除去所有QWidget相关的类以后的部分

Qt OpenGL

可能会被合并到其他模块

Qt Quick2

 

Qt Test

 

Qt Sql

 

V8 JavaScript engine

 

Qt DBus

由于依赖问题,必须被包含进来

Qt WebKit

提供新的底层C++和QML的接口

Qt MultimediaKit

 

来自Qt mobility的一些模块

初期可能还不会包含进来

Qt5 的核心将是 Qt Quick,qml和javascript将成为一等公民。这些模块中变化最大的当属 Gui 模块了,GUI结构进行了彻底的更新:

  • SceneGraph, 什么东东呢?不太了解。似乎:“Scene Graph”是一种组织场景数据的方法,它把数据放进一个层次结构里。

  • OpenGL, Qt5将依赖OpenGL 2

  • lighthouse(QPA),各个平台下图形系统的移植靠它实现,不过现在好像还没看到Win32插件的影子。

同时 QWidget 相关内容将独立成为QtWidget 模块,与打印相关内容,独立出来成为QtPrintSupport,...

但是,这并不是说这部分被废弃了。之所以不在Qt Essentials内,是因为并不是所有平台都需要它。对于桌面平台来说,QtWidget 和其他模块一样,是一等公民!!

  • We want to send the correct message to the users of QWidget classes: they are 1st class citizens in the desktop environment, but not necessarily available in the embedded or mobile environments

Qt附加组件(Qt Add-Ons)

在Qt5中,尽管 Qt Quick 是Qt的中心,但是Qt5仍将一如既往支持原生C++ Qt,而且不想与现在Qt4开发的代码分裂。Qt4中的一些模块在Qt5中被放入Qt Add-Ons中。

  • Qt 5 continues to offer all of the power of native Qt C++, and we don’t want Qt 5 to be disruptive for existing code developed for Qt 4.

QWidget 模块

模块成熟级别:完成(Done)
不再添加新特性或进行性能优化

Xml

XmlPatterns

Script 和 Scripts Tools

ActiveQt

Svg

模块成熟级别:废弃
QtWebKit提供Svg Full支持

Mobility中的一些模块

 

Qt Quick components模块

 

3D

 

graphics effects

 

还有些东西没看到哈,比如:

phonon

phonon由KDE社区继续维护,Qt建议使用 QtMultimediaKit

Qt Multimedia

从Qt4.8开始,废弃,建议 QtMultimediaKit

Qt3 Support

废弃

参考


  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
### 回答1: Qt 5.4.3 是一个开源的跨平台应用程序开发框架。源码就是指这个框架的源代码,它包含了构建整个框架的代码文件。 Qt 5.4.3 源码非常庞大,包含了数以万计的源代码文件。这些源码文件分布在不同的目录下,组织成了一个庞大而复杂的代码库。 Qt 5.4.3 源码提供了丰富的功能和模块,可以用于开发各种类型的应用程序,例如桌面应用程序、移动应用程序、嵌入式系统等。这些功能和模块包括图形界面、网络通信、数据库访问、多媒体处理、线程管理等等。 通过阅读和理解 Qt 5.4.3 源码,开发者可以深入了解框架的内部工作原理,并且可以在需要的时候进行修改和定制。这样,开发者可以将框架适配到自己的应用程序中,实现更高级、更复杂的功能。 同时,Qt 5.4.3 源码也是一个学习的宝库,通过阅读源码,可以学习到优秀的编码风格、设计模式的应用、高效的算法等等。这对于提高自己的编程能力和开发水平非常有帮助。 总之,Qt 5.4.3 源码是开发者进行应用程序开发的重要资源。通过深入学习和理解源码,可以提高开发者的技能,并且可以实现更加灵活和强大的应用程序。 ### 回答2: Qt 5.4.3 是Qt Framework的一个版本,是一种用于开发跨平台应用程序的开源框架。源码是Qt 5.4.3框架的原始代码。 Qt是一种C++库,提供了一套丰富的功能和工具,用于开发图形用户界面和各种应用程序。Qt具有跨平台性,可以在Windows、macOS、Linux和其他一些操作系统上运行。 Qt 5.4.3的源码包含Qt Framework各个组件的实现代码。通过阅读和理解源码,开发人员可以深入了解框架的内部机制和工作原理。同时,也可以根据需要进行自定义修改和扩展。 Qt 5.4.3的源码按照模块进行组织,每个模块都有自己的源代码文件。例如,Qt Widgets模块包含了创建和管理各种用户界面控件的代码,Qt Network模块包含了网络编程相关的代码等等。通过这种模块化的组织方式,开发人员可以针对自己的需求选择性地阅读和修改源码。 阅读Qt 5.4.3源码可以帮助开发人员更好地理解和利用Qt框架的功能。对于一些特定的需求,开发人员可以通过修改源码来定制框架的行为,从而实现自己的业务逻辑。 总之,Qt 5.4.3的源码是Qt Framework的原始代码,通过阅读和理解源码,开发人员可以更好地理解和利用Qt框架,实现自己的应用程序。 ### 回答3: Qt 5.4.3是一款跨平台的应用程序开发框架,包含了丰富的类库和工具,提供了开发网络、图形界面和嵌入式等各种类型应用程序的功能。Qt 5.4.3源码是指该版本的Qt框架的源代码。 Qt 5.4.3源码可以让开发者深入了解Qt框架的内部实现,包括各个模块和类的具体实现细节。开发者可以通过查看源码了解Qt框架的设计思想、算法和数据结构等,从而更好地理解和使用框架提供的功能。 Qt 5.4.3源码可以用于定制化开发,开发者可以根据自己的需求对框架进行修改和扩展。通过修改框架源码,可以实现自定义的功能,优化性能,修复Bug等。此外,对于一些特殊需求,Qt提供了自定义模块和插件的方式,开发者可以基于Qt 5.4.3源码进行二次开发,满足特定的需求。 但是需要注意的是,修改Qt源码需要具备较高的编程水平和对Qt框架的深入理解。在修改源码之前,建议阅读官方文档,了解框架的设计原则和API的使用规范,以确保修改的正确性和稳定性。 总之,Qt 5.4.3源码是Qt框架的核心组成部分,通过查看和修改源码,开发者可以更好地理解和使用Qt框架,实现个性化的应用程序开发需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值