🌱 基础入门 | C++ 语言基础 | 基本语法、面向对象编程(类、继承、多态、模板)、现代 C++ 特性(C++11~C++20) | Qt 基于 C++,扎实的 C++ 基础是前提。 |
| Qt 概述与安装 | Qt 框架简介、跨平台特性、Qt Creator IDE 安装与配置、编译器配置(MSVC, MinGW, GCC) | 搭建开发环境,创建第一个 Qt 项目(如 Hello World)。 |
| Qt 核心机制 | **信号与槽 (Signals & Slots)****元对象系统 (Meta-Object System)**对象模型与内存管理 | 理解 Qt 独有的通信机制、反射机制和基于父子关系的自动内存管理。 |
🖼️ GUI开发与核心机制 | Qt Widgets 与控件 | 基础控件(QPushButton, QLabel, QLineEdit 等)、容器控件(QTabWidget, QScrollArea 等)、主窗口(QMainWindow) | 掌握常用控件的使用和界面组装。 |
| 布局管理 | 布局管理器(QHBoxLayout, QVBoxLayout, QGridLayout, QFormLayout)、嵌套布局 | 使用布局自动调整控件大小和位置,适应不同分辨率和屏幕大小。 |
| 对话框 | 模态与非模态对话框、标准对话框(QMessageBox, QFileDialog, QColorDialog 等)、自定义对话框 | 掌握与用户交互的各类对话框。 |
⚙️ 进阶功能模块 | 模型/视图编程 | Model/View 架构、标准模型(QStringListModel, QStandardItemModel)、自定义模型(QAbstractItemModel) | 高效处理和管理大量数据(列表、树、表格)。 |
| 绘图与图形 | QPainter 2D 绘图、Graphics View Framework(QGraphicsView, QGraphicsScene, QGraphicsItem) | 实现自定义绘制和复杂图形交互场景(如图表、流程图)。 |
| 文件与数据持久化 | 文件读写(QFile, QTextStream, QDataStream)、QSettings 读写配置、数据库操作(QtSql模块,SQLite等) | 实现应用程序数据的本地存储、检索和管理。 |
| 多线程与并发 | QThread、QRunnable、线程同步(QMutex, QWaitCondition等)、线程间通信 | 防止GUI假死,提升程序性能,注意避免在非GUI线程操作GUI对象。 |
| 网络编程 | HTTP通信(QNetworkAccessManager)、TCP/UDP(QTcpSocket, QTcpServer, QUdpSocket)、网络安全(QSslSocket) | 开发网络应用,与Web API交互。 |
🚀 高级主题与优化 | Qt Quick / QML | QML 语法、Qt Quick 控件、JavaScript 集成、C++ 与 QML 交互 | 开发动态、流畅、现代化的用户界面,尤其适合移动端和嵌入式界面。 |
| 性能优化 | 内存管理优化、渲染优化(OpenGL)、模型/视图性能、QML 性能调优 | 提升应用程序运行效率和响应速度。 |
| 跨平台开发与部署 | 处理平台差异(Windows, Linux, macOS)、打包部署(windeployqt, macdeployqt)、静态链接 | 制作分发给最终用户的安装包。 |
🧪 专家级与前沿 | 扩展模块 | Qt Multimedia(多媒体)、Qt Charts(图表)、Qt WebEngine(浏览器引擎)、Qt 3D(3D图形) | 为应用添加音频视频、数据可视化、网页渲染、3D展示等高级功能。 |
| 设计模式与架构 | 在Qt中应用MVC/MVVM等模式、构建清晰可维护的项目架构(UI、逻辑、数据分离) | 编写高质量、易维护、可扩展的代码。 |
| 嵌入式开发 | Qt for Embedded Linux、适配ARM架构设备 | 开发车载系统、工业控制界面等嵌入式应用。 |