【QT】QT背景介绍

本专栏内容为:QT学习专栏 通过本专栏的深入学习,你可以了解并掌握QT。
💓博主csdn个人主页:小小unicorn

⏩专栏分类:QT

🚚代码仓库:小小unicorn的代码仓库🚚

🌹🌹🌹关注我带你学习编程知识

目录

QT背景介绍

行业岗位介绍

在正式介绍什么是QT之前,我们先了解一下目前的行业岗位

我们先列举一下互联网的核心岗位以及职责

• 开发(程序员最关注的)

• 测试

• 运维(管理机器)

• 产品经理(非技术岗,提出需求)

对于咱们程序员来说,开发顾名思义是我们最关注的,而开发又可以分为一下几种:

• 后端开发

• 前端开发

• 算法工程师

• 游戏开发

• ...

而我们的前端开发呢又可以分为

a. 网页前端开发(做网页的)

b.桌面应用开发(做电脑上的应用程序的)

c. 移动应用开发(做手机上的应用程序的)

而咱们得QT技术,用于进行我们的客户端开发

什么是客户端

那么什么是客户端呢?

准确的说,QT特指用来进行桌面应用开发(电脑上写的程序)涉及的一套技术

客户端开发的重要任务为:

GUI开发的各种技术方案

那么Windows下还有哪些方案,可以开发GUI呢?

• windosAPI (windows系统提供原生的API,开发起来非常原始但也非常繁琐)

• MFC (上个世纪90年代影响力是非常深远的,VC6.0)

• QT(1991年左右就诞生了,和MFC不同,MFC早都不更新了,寄了,但是QT任然在不停的更新迭代,至今任然有生命力)

后来微软,自己又搞了个编程语言C#(C sharp)

•Windows Forms (给C#量身定做的一套开发GUI技术体系)

• WPF

• UWP

• Electron(本质上是把基于HTML这样的网页,打包成一个Windows上运行的客户端程序)

但是这个技术体系,最初是用来开发"atom"文本编辑器的,后来atom就寄了(被微软的VSCode取代了)

QT虽然只是上述解决方案的其中一个,但仍然属于是其中非常能打的(商业公司的产品,使用QT是非常多的,对应的就业岗位相比于其他的技术方案也是更多的)

而且Q还有个优势就是可以跨平台,不仅仅支持Windows,也支持Linux,还支持Max,属于是一个六边形战士了

什么是框架

Qt是⼀个跨平台的C++图形⽤⼾界⾯应⽤程序框架。

那么什么是框架呢?

编写C++代码,框架当然也是很重要的,

C++的生态,是割裂的离散的,不像Java,存在一些巨无霸社区,一统天下

C++不同的开源社区/大厂,各有各自的框架,各自为政

相比之下,像QT这种,能够被大家共同认可的框架,在整个C++生态中是不多见的。

什么是QT

Qt是⼀个跨平台的C++图形⽤⼾界⾯应⽤程序框架。它为应⽤程序开发者提供了建⽴艺术级图形

界⾯所需的所有功能。它是完全⾯向对象的,很容易扩展。Qt为开发者提供了⼀种基于组件的开发模

式,开发者可以通过简单的拖拽和组合来实现复杂的应⽤程序,同时也可以使⽤C++语⾔进⾏⾼级开

图形化界面:

指采⽤图形⽅式显⽰的计算机操作⽤⼾界⾯,是计算机与其使⽤者之间的对话接⼝,

是计算机系统的重要组成部分。如下分别是:Android⼿机图形⽤⼾界⾯和IOS⼿机图形⽤⼾界⾯。

例如:

QT的发展史

•1991年Qt最早由奇趣科技开发;

•1996年进⼊商业领域,它也是⽬前流⾏的Linux桌⾯环境KDE的基础;

•2008年奇趣科技被诺基亚公司收购,Qt成为诺基亚旗下的编程⼯具;

•2012年Qt⼜被Digia公司收购;

•2014年4⽉跨平台的集成开发环境QtCreator3.1.0发布,同年5⽉20⽇发布了Qt5.3正式版,⾄

此Qt实现了对IOS、Android、Embedded等各平台的全⾯⽀持。

QT支持的平台

• Windows‒XP、Vista、Win7、Win8、Win2008、Win10

• Unix/X11‒Linux、SunSolaris、HP-UX、CompaqTru64UNIX、IBMAIX、SGIIRIX、FreeBSD、

BSD/OS、和其他很多X11平台

• Macintosh‒MacOSX

• Embedded‒有帧缓冲⽀持的嵌⼊式Linux平台,WindowsCE

• Android

QT版本

⽬前最新的版本是Qt6.但是相对来说Qt6和Qt5之间的核⼼功能区别不⼤.并且企业中也仍然有⼤量

的项⽬在使⽤Qt5.

因此咱们仍然使⽤Qt5版本来进⾏介绍.

另外Qt在发布的时候还提供了两种许可证 .

• 商业许可:开发者以商业⽬的使⽤Qt框架进⾏开发和发布软件的许可,开发者需要购买商业许可并

按照相关规定使⽤Qt框架。商业许可提供了更多的功能和服务,适合于商业软件开发。

• 开源许可:开发者以⾮商业⽬的使⽤Qt框架进⾏开发和发布软件的许可,开发者可以免费使⽤Qt框

架,但需要遵守开源许可协议的要求,如在软件中包含Qt许可协议的声明等。

QT的优点

• 跨平台,⼏乎⽀持所有的平台;

• 接⼝简单,容易上⼿,学习QT框架对学习其他框架有参考意义。

• ⼀定程度上简化了内存回收机制;

• 开发效率⾼,能够快速的构建应⽤程序。

• 有很好的社区氛围,市场份额在缓慢上升。

• 可以进⾏嵌⼊式开发。

内存回收机制:

半自动的垃圾回收,能够简化内存释放,也能够尽可能小的影响程序的运行效率。

QT的应用场景

• 桌⾯应⽤程序

Qt能够创建各种类型的桌⾯应⽤程序,包括⽂件管理器、媒体播放器、绘图程序等。Qt应⽤程序⽀持

多种操作系统,可以运⾏在Windows、Linux、macOS等桌⾯操作系统上。

• 移动应⽤程序

Qt⽀持Android和IOS移动操作系统,为应⽤程序提供了强⼤的跨平台能⼒。可以使⽤Qt构建各种

移动应⽤程序,例如社交应⽤、游戏、娱乐等。

• 嵌⼊式系统

Qt在嵌⼊式领域应⽤⾮常⼴泛,它可以构建⾯向各种设备的图形应⽤程序,在机顶盒、⻋载娱乐系

统、安防监控设备等领域具有⼴泛的应⽤。

QT的成功案例

Linux桌⾯环境KDE

Skype⽹络电话。Skype是⼀款即时通讯软件,其具备IM所需的功能,⽐如视频聊天、多⼈语⾳会

议、多⼈聊天、传送⽂件、⽂字聊天等功能。它可以⾼清晰与其他⽤⼾语⾳对话,也可以拨打国内国

际电话,⽆论固定电话、⼿机均可直接拨打,并且可以实现呼叫转移、短信发送等功能。

在这里插入图片描述

Qt的发展前景及就业分析

Qt是⼀个强⼤且⼴泛应⽤于跨平台软件开发的框架。它提供了丰富的⼯具和库,可⽤于开发⾼质量、

⾼效率的图形⽤⼾界⾯(GUI)应⽤程序。并且可以在Windows、linux、macOS等多种操作系统上

运⾏。随着⾏业的发展,Qt的重要性也逐渐体现出来,下⾯从⾏业发展⽅向、就业⽅⾯的发展前景以

及就业薪资分析Qt的发展前景。

⾏业发展⽅向
• 物联⽹(IoT)和嵌⼊式系统的发展

在当下的嵌⼊式和物联⽹⾏业中,Qt的作⽤逐渐得到了体现,因为可以⽤它来开发具有GUI界⾯的嵌

⼊式应⽤程序,这对于智能家居、汽⻋以及医疗设备等领域来说,具有⾮常重要的作⽤。
• ⾃动驾驶和智能交通领域:

现在很多的汽⻋都引⼊了⾃动驾驶的技术,⽽Qt在其中也有着⼴泛的应⽤,它可以开发⻋载嵌⼊式系

统和⽤⼾界⾯程序。随着未来⾃动驾驶技术的发展,Qt在这⽅⾯的需求也会不断地增多。
• 游戏开发:

Qt有⼀些⾮常重要的功能模块,例如Qt3DStudio,可以应⽤于游戏开发。未来游戏⾏业的持续发

展,Qt在游戏⾏业的发展将会越来越多。

就业⽅⾯的发展前景:
⼴泛的就业机会:

Qt在各个⾏业的应⽤逐渐⼴泛起来,对于掌握Qt开发能⼒的⼈员需求也在不断增加,因此在就业⽅

⾯,相对⽐于其他⾏业来说,Qt就业⾯更⼴,选择性更多。
⾼薪⽔和职业发展机会:

Qt作为⼀项专业技能,掌握此项技术的开发者获得的薪资报酬也是⾮常可观的,具有更多的职业发展

机会。总之就是,如果掌握了Qt开发技术,未来的发展前景还是⾮常不错的。

• 就业薪资:

相关推荐
在下不上天23 分钟前
Flume日志采集系统的部署,实现flume负载均衡,flume故障恢复
大数据·开发语言·python
陌小呆^O^37 分钟前
Cmakelist.txt之win-c-udp-client
c语言·开发语言·udp
I_Am_Me_1 小时前
【JavaEE进阶】 JavaScript
开发语言·javascript·ecmascript
重生之我是数学王子1 小时前
QT基础 编码问题 定时器 事件 绘图事件 keyPressEvent QT5.12.3环境 C++实现
开发语言·c++·qt
Ai 编码助手1 小时前
使用php和Xunsearch提升音乐网站的歌曲搜索效果
开发语言·php
学习前端的小z1 小时前
【前端】深入理解 JavaScript 逻辑运算符的优先级与短路求值机制
开发语言·前端·javascript
神仙别闹1 小时前
基于C#和Sql Server 2008实现的(WinForm)订单生成系统
开发语言·c#
XINGTECODE1 小时前
海盗王集成网关和商城服务端功能golang版
开发语言·后端·golang
zwjapple2 小时前
typescript里面正则的使用
开发语言·javascript·正则表达式
小五Five2 小时前
TypeScript项目中Axios的封装
开发语言·前端·javascript