欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Qt/function
模块化 Qt C++ 类库提供一套丰富的应用程序生成块 (block),包含了生成高级跨平台应用程序所需的全部功能。
目录 |
模块化类库
先进的图形用户界面(GUI)
Qt为您在桌面与嵌入式平台上开发先进的GUI应用程序,带来所有需要的功能。Qt使用所支持平台的本地化图形API,充分利用系统资源并给予应用程序本地化的界面。
- 从按钮和对话框到树形视图与表格都具有完整的控件(窗体)
- 自动缩放,字体、语言与屏幕定位识别布局引擎
- 支持抗锯齿、矢量变形以及可缩放矢量图形 (SVG)
- 具有样式API和窗体样式表,可完全自定义用户界面
- 支持嵌入式设备的硬件加速图形和多重显示功能
基于OpenGL和OpenGL ES的3D图形
OpenGL 是一个标准的图形库,用于构建跨平台和支持硬件加速的高性能可视化应用程序。虽然OpenGL完美支持3D图形,但却不支持创建应用程序用户界面。Qt通过与OpenGL 的紧密集成解决了这一难题。
- 在您的应用程序中轻松加入3D图形
- 在嵌入式Linux 与Windows CE 平台上使用OpenGL ES和OpenGL绘画引擎
- 利用系统资源实现最佳图形性能
- 支持Windows 平台上的Direct3D
多线程
多线程编程是一个执行资源密集型操作而不会冻结应用程序用户界面的有效典范。Qt的跨平台多线程功能简化了并行编程,另外它附加的同步功能可以更加轻松地利用多核架构。
- 管理线程、数据和对象更加轻松
- 基于Qt的信号与槽,实现跨线程类型安全的对象间通讯
- 高端API可以编译多线程程序而无须使用底端基元
嵌入式系统的紧凑视窗系统
Qt构建在标准的 API基础上,用于具有轻量级window系统的嵌入式 Linux 设备。基于 Qt的应用程序直接写入 Linux 帧缓冲,解除了您对 X11 视窗系统的需求。
- 减少内存消耗,内存占用更小
- 可以编译移除不常使用的组件与功能
- 可以利用硬件加速图形
- 在桌面系统上的虚拟帧缓冲可用于嵌入式开发与调试
对象间通讯
在开发用户图形界面中,一个常见的、重复发生系统崩溃与问题的症结根源是如何在不同组件之间进行通信。对于该问题,Qt 的解决方案是信号与槽机制,即执行Observer设计模式。我们可以简单理解为当特殊事件发生的时候,信号就被发出了,一个插槽就是一个函数,被称作特定信号的响应。
- 信号与槽机制是类型安全的(type safe)
- 任意信号都可以连接任意或多个插槽,或跨多个线程
- 简化真正的组件编程
2D图形
Qt给您提供一个功能强大的2D图形画布,用以管理和集成大量的图形元素。
- 高精度可视化大量元素
- 将窗体互动嵌入至图形场景中
- 支持缩放、旋转、动画与透视变换
多媒体框架
Qt使用 Phonon多媒体框架为众多的多媒体格式提供跨桌面与嵌入式操作系统的回放功能。Phonon可以轻松将音频与视频回放功能加入到Qt应用程序当中,并且在每个目标平台上提取多媒体格式与框架。
- 以平台独立的方式提供多媒体内容
- 从本地文件读取媒体或读取网络上的流媒体
- 提取Mac上的 QuickTime ,Windows 上的DirectShow 以及 Linux 上的GStreamer
WetKit集成
Qt集成了WebKit功能,WebKit是KDE项目下基于 KHTML的开放源web浏览器引擎。目前 Apple,Google 与Nokia等公司使用Qt WebKit集成。
- 将web与本地内容和服务整合在单一的富应用程序当中
- 快速创建整合实时web内容与服务的应用程序
- 使用集成在本地代码中的 HTML 与Java Script
- 完全控制跨平台的浏览器环境
网络连接
Qt 让您网络编程更简单,并支持跨平台网络编程
- 完整的客户/服务器插口提取
- 支持 HTTP,FTP,DNS 与异步 HTTP 1.1
- 无论HTML 和XML或图象与媒体文件,它都可以存取所有类型的数据
XML
Qt 为XML 文件以及SAX 和 DOM 协议的C++实现,提供了一个流媒体文件读写器。同时 Qt 还包含了 XQuery – 一个简单的类似 SQL的查询语言,用于解析XML文件来选择和聚合所需要的XML元素,并且将它们转换成XML输出或其它格式的输出。
- 仅需少数几行代码便可实现先进的 XML 查询
- 完全支持 XQuery 1.0 和 XPath 2.0
- 在您自己的应用程序中从XML查询、抽取和转换数据
脚本引擎
Qt 包含一个完全集成 ECMA 标准的脚本引擎。 QtScript 提供 QObject 集成,把 Qt的信号与槽机制整合成脚本,并且实现了C++ 与脚本的集成。
- 基于ECMA 标准的脚本语言 (ECMAScript 3是JavaScript 1.5的基础)
- 为简化的对象间通讯使用Qt的信号与槽机制
- 开创新的契机将脚本与您的Qt应用程序相集成
数据库
Qt 帮助您将数据库与您的Qt应用程序无缝集成。Qt支持所有主要的数据驱动,并可让您将SQL发送到数据库服务器,或者让 Qt SQL类自动生成 SQL 查询。
- 支持所有主要的数据库驱动
- 以多种视图或数据识别表单方式显示数据
<discussion>characters_max=300</discussion>