先说政策方面,随着与西方的脱钩,对基础软硬件工具的国产化需求会越来越大。C++ Qt 本身也面临一些版权问题,因为Qt也是欧美的产品。虽然目前在某些自主Linux系列系统上,C++Qt是开发的主流,但不代表没有许可证的问题。在短期和中期,我认为体制内对C++ Qt的需求会非常旺盛。中长期,不一定。

再说技术本身,C++,或者说C&C++依旧是工业软件的绝对主力。各种CAD、有限元、数控、生物、医药行业大量的能“卡脖子“的工业软件,对C/C++的使用非常广泛。芯片相关、FPGA、DSP上位机套件以及设计工具,这些东西一时半会全改成Rust工作量还是很大的。而Qt是基于C/C++最为全面和易用的框架库,提供了完整的API+IDE,且跨平台。它显著降低了基础软件(工业软件)研发成本。但由于国内在基础软件领域的短板,使得短期难以找到对应德州仪器、仙林思、西门子这种巨头企业来培育人才。

把 C++/Qt与Web、Java技术相比意义不大,擅长领域不同。一个是重工业,一个是轻工业,就像比较买到的数控车床和超级跑车哪个好一样。本人相对看好 C++Qt的前景,投身于该类开发工具链条所在的行业,要比纯粹做消费类软件开发要长久。毕竟找个较为稳定的饭碗还是比较好

Qt开发工程师

Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。

还不熟悉的朋友,这里可以先领取一份qt开发新手学习资料包(+v:cz1625358265备注:369领取

本文介绍下qt开发从入门到高级进阶的学习路线,整个学习路线,直接对标qt工程师开发岗位,知识点包括语言编程基础、Qt编程入门到精通专栏、Qt高级进阶专栏、Qt项目开发实战专栏、Qt开发工程师提升专栏等 。其次你把整个内容,全部消化,是完全可以胜任任何qt开发招聘,C++ qt开发招聘。

1、Qt C++语言编程基础专栏

(一)Qt C++语言编程基础

  • Visual Studio 2022安装

  • C++语言基础概述

  • C++指针与引用

  • C++类与对象(一)

  • C++类与对象(二)

  • 类的基它特性

  • 构造函数&析构函数&拷贝构造函数

  • C++友元与动态内存

  • 函数重载与运算符重载

(二)Qt C+ +语言进阶

  • 单继承

  • 多继承

  • 虚继承及其它特性

  • 虚函数与抽象类

  • 命名空间与模板

  • C+ +I0流类库

  • STL(vector & deque & stack)

  • STL(queue & set & map)

  • C+ +异常处理,

(三)Qt C+ +语言新特性

  • 类型推导: auto & decltype

  • 序列for循环

  • lambda表达式

  • 构造函数:委托构造和继承构造

  • 容器: array & forward list & tuple

  • 垃圾回收机制

  • 正则表达式基础

  • 智能指针: shared_ ptr & unique_ ptr & weak_ ptr

  • 关键字: nullptr & constexpr

  • 共享内存&互斥量mutex

  • C++11: STL hashmap

  • 关联容器: unordered_ map

  • atomic flag & atomic应用

  • 条件变量: condition variable

  • 异常处理: exception

  • is integral应用实战

  • is_ rvalue_ reference应用实战

  • is_ arithmetic应用实战

  • is volatile应用实战

  • is class应用实战

  • 变量模板

  • inline应用实战

2、Qt编程入门到精通专栏

(一)Qt开发基础体系

  • Qt下载与安装配置

  • Windows Qt环境安装

  • Linux Qt环境安装

  • Qt Creator工具介绍与使用.

  • Qt信号与槽机制

  • Qt字符串&数据类型&容器类

  • 字符串类应用与常见数据类型

  • 常用容器类

  • QMap类& QHash类& QVector类

  • QList类& QLinkedList类

  • QVariant类应用

  • 常用算法及正则表达式

(二)Qt开发常用控件详解

  • Layouts & Spacers

  • Buttons & Containers

  • Item Views

  • Item Widgets

  • Input Widgets

  • Display Widgets

(三)Qt布局及对话框详解

  • 布局管理

  • QLayout & QStackedWidget类

  • QSplitter类& QDockWidget类

  • 对话框

  • 文件对话框

  • 颜色对话框

  • 字体对话框

  • 输入对话框

  • 消息对话框

  • 自己定义消息框

(四)Qt图形&模型&视图

  • 绘图原理双缓冲机制

  • Graphics View特性详解

  • Mode & View & Delegate

(五)Qt文件操作及事件处理

  • 目录操作及文件系统

  • QCoreApplication类

  • QFilelnfo类

  • QDir类

  • QTemporaryDir

  • QTemporaryFile

  • 获取文件特性实现

  • 鼠标及键盘事件

  • 事件过滤处理分析

(六)Qt服务应用操作

  • INI文件操作

  • JSON文件操作

  • XML文件操作

(七)Qt网络及多线程

  • 套接字编程API函数详解

  • UDP协议工作原理

  • TCP服务器设计

  • TCP客户端设计

  • TCP协议工作原理

  • UDP服务器设计

  • UDP客户端设计

  • 多线程编程

  • 互斥量

  • 信号量

  • 多线程C/S模型项目实战

  • HTTP协议编程技术

  • Websocket原理及编程技术

(八)Qt数据分析:图表详解

  • Qt图表基础知识

  • Qt ChartView详解

  • Qt常用图表类型

  • 曲线图

  • 拆线图

  • 柱形图

  • 饼状图

(九)Qt应用程序打包及发布

  • 打包QT应用程序

  • 发布QT应用程序

3、Qt高级进阶专栏

(一)MySQL数据库编程技术

  • 数据库基础知识

  • MySQL基本操作

  • MySQL运算符

  • 数据类型及存储引擎

  • 表数据增&删&改&查&高级查询

  • MySQL流程控制语句

  • SQL语句详解

  • 索引

  • 视图

  • 存储过程和函数

  • 触发器

  • 事件

  • MySQL备份与恢复

  • Qt操作MySQL数据库实战

(二)sQLite数据库编程技术

  • SQLite下载与安装配置

  • sQLite创建数据库

  • SQL ite附加&分离数据库

  • SQLite数据类型

  • SQLite创建表&删除表

  • SQLite insert into语句详解

  • SQLite select & update & delete语句

  • sQLite Distinct & Orderby & Groupby

  • SQLite触发器

  • sQLite索引

  • SQLite视图

  • sQLite事务

  • Qt操作SQLite数据库实战

(三)OpenCV编程开发常用技术

  • OpenCV与VS2022环境搭建

  • OpenCV常见API及绘图详解

  • OpenCV图像读写技术

  • OpenCV视频读写技术

  • OpenCV图像滤波技术

  • OpenCV视频录制技术

  • OpenCV图像翻转技术

  • OpenCV图像旋转技术

  • OpenCV实现窗口置顶

  • OpenCV边缘检测技术1

  • OpenCV边缘检测技术2

  • OpenCV向上向下采样

  • OpenCV形态学之膨胀

  • OpenCV图像浮雕技术

  • OpenCV图像人脸识别

(四)C++ 23种设计模式

  • 创建型模式(5种)

  • 工厂模式

  • 抽象工厂模式

  • 原型模式

  • 单例模式

  • 建造者模式

  • 结构型模式(7种)

  • 适配器模式

  • 桥接模式

  • 组合实体模式

  • 装饰器模式

  • 外观模式

  • 享元模式

  • 代理模式

  • 行为模式(11种)

  • 责任链模式

  • 中介者模式

  • 策略模式

  • 模板模式

  • 状态模式

  • 观察者模式

  • 备忘录模式

  • 命令模式

  • 访问者模式

  • 解释器模式

  • 迭代器模式

4、Qt项目开发实战专栏

(一)文字编辑: Word处理软件

  • Word文字编辑软件架构设计分析

  • 菜单栏工具栏状态栏功能模块设计

  • 菜单栏工具栏状态栏动作与实现

  • 系统模块整体功能关联与实现

  • Word文件编辑软件调试及测试

(二)音频项目实战: MP3播放器搜索引擎(Qt5+SQLite)

  • MP3音乐播放器搜索引 |擎设计与实现

  • SQLite数据库 数据表设计与实现歌曲搜索

  • HTTP下载音乐数据解析Json显示歌词

  • 上一曲播放暂停下一 曲循环播放实现

  • 音乐搜索引|擎关于皮肤更换系统托盘

(三)信息管理项目:库存管理系统(Qt5+ MySQL)

  • 商品数据库设计及配置测试

  • 库存新增商品和查询商品

  • 商品入库与商品出库

  • 商品删除与导出数据

  • 数据汇总及数据备份

(四)即时通讯项目:腾讯QQ客户端软件

  • 即时通讯项目简介

  • QQ客户端登录设计

  • QQ登录窗口翻转效果实现

  • IP地址控件设置

  • 主界面及窗口移动实现

  • QQ登录逻辑业务处理分析

  • 项目全局类定义与实现

  • 完善MainWindow及托盘技术

  • QQ好友组及U|效果实现

  • QQ聊天窗口和排版设计

  • 头像裁剪技术

  • 音频技术分析与实现

  • QQ添加好友逻辑业务处理

  • QQ聊天逻辑处理分析

  • 消息时序图和头像截图处理技术

  • 即时通讯群组功能实现

  • QQ表情与gif图片处理技术

  • 文件上传功能实现

  • QQ文件传输技术

  • QQ头像显示与添加好友显示实现

(五)视频项目实战:视频播放器(Qt+ FFmpeg)

  • 播放器项目需求分析

  • Player UI主界面设计

  • 播放文件Title设计实现

  • 控制条CtrlBar设计实现

  • 播放文件列表Playlist实现

  • 播放器模块分析与设计

  • 打通UI到播放器核心的通道消息队列

  • 打通Ul到播放器核心的通道类名和接口

  • 状态处理: stream open和stream close

  • 解复用&数据读取read thread设计

  • 解码线程Decoder封装

  • 音频输出及视频渲染输出

  • 音视频同步原理与技术详解

5、Qt开发工程师提升专栏

(一)Qt开发工程师提升: Quick编程常用技术

  • QML基础知识

  • QML语言基础

  • QML元素1: Image & Rectangle & Text

  • QML元素2: ButtonStyle & ltem & BusyIndicator

  • Quick事件处理

  • 键盘事件

  • 鼠标事件

  • 定时器

  • Quick组件及元素布局

  • Component & Loader

  • 定位器及布局管理器

  • Quick开发常用元素及Canvas(画布)

  • TextField & TextArea & TextInput

  • CheckBox & GroupBox & TabView

  • Canvas(画布)绘制图形

  • 动画及.Mode & View

  • 动画常用元素

  • Animation & PropertyAnimation & NumberAnimation

  • ColorAnimation & PathAnimation & SpringAnimation

  • 组合动画部分: ParallelAnimation & SequentialAnimation

  • 动画协同元素: Behavior & ParentAnimation & AnchorAnimation

(二)Qt开发工程师提升: QSS编程常用技术

  • QSS实战开发1: QSS作用及应用场景

  • QSS实战开发2: QSS常用基本语法

  • QSS实战开发3: QSS控件样式QL abel & QLineEdit & QPushButton

  • QSS实战开发4: QSS控件样式QComboBox

  • QSS实战开发5: QSS控件样式QTableWidget

  • QSS实战开发6: QSS控件样式QProgressBar

  • QSS实战开发7: QSS控件样式QSlider

  • QSS实战开发8: QSS控件样式CheckBox

  • QSS实战开发9: Ubuntu系统控件风格

  • QSS实战开发10: Mac系统控件风格

(三)Qt开发工程师提升:核心技术模块

  • QtConcurrent线程处理(过滤和映射)

  • Qt之QWebEngineView框架分析

  • Qt生成及读取XML文件及应用实战

以上是系统学习课程大纲,需要系统学习请添加小雯(V:cz1625358265备注369领取专属大额优惠券。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐