本节对应的视频讲解:B_站_链_接
https://www.bilibili.com/video/BV1334y1776z
Qt
是一个跨平台的 C++
图形用户界面应用程序框架
Qt
为应用程序开发者提供建立艺术级图形界面所需的所有功能
Qt
是完全面向对象的,很容易扩展,并且允许真正的组件编程
1. Qt 的发展史
在讲解学习 Qt 的必要性之前, 先来了解下 Qt 的发展历史:
- 1991年,Qt 最早由 奇趣科技(
TrollTech
)开发 - 1996年,进入商业领域,它也是目前流行的 Linux 桌面环境 KDE 的基础
- 2008年,奇趣科技被
诺基亚
公司收购,Qt 成为诺基亚旗下的编程语言 - 2012年,Qt 又被
Digia
公司收购 - 2014年4月,跨平台的集成开发环境 Qt Creator 3.1.0 发布,同年5月20日配发了 Qt5.3 正式版,至此 Qt 实现了对 iOS、Android、WP 等各平台的全面支持
- 2020年,Qt 团队宣布
6.0
版本发布。 - 当前 Qt 最新版本为 Qt 6.3
2. Qt 的优势
(1)跨平台
用 Qt 编写的程序,可以直接编译运行到不同的平台:windows
、linux
、mac
主流的应用级软件肯定是要跑在这三个平台的,用 mfc
、c#
做的话, 就只能跑在 windows 上,无法轻易移植到 linux , mac 上去
(2)知名软件都用 Qt
很多知名软件都是 Qt 开发的
-
谷歌地图
Google Earth,是一款谷歌公司开发的虚拟地球软件,通过它可以浏览全球各地的高清晰度卫星图片 -
Wireshark
一款免费的网络抓包分析软件,它的功能非常强大对于开发者而言,可以用它通过抓包分析,来解决开发过程中的很多问题。 -
VirtualBox
开源的虚拟机软件,可以在一台电脑上同时运行两个操作系统
典型的用法就是:宿主机安装 windows 系统,然后通过 virtualbox,再安装一个 linux 系统,这样就可以同时运行 windows 和 linux 两个系统,并且在两个系统之间可以很方便地共享文件
virtualbox 对标的是 Vmware,VMware 也是一个虚拟机软件,不过它是收费的 -
VLC
这是一个开源的多媒体播放器
它体积小巧、功能强大,做音视频开发的小伙伴应该是很熟悉它的 -
WPS Office
金山公司(Kingsoft)出品的国产办公软件套装,完全兼容微软的 Office 系列 -
YY 语音
国内第一大游戏语音通讯平台,可以进行在线多人语音聊天和语音会议
百度查一下还有很多,可以不学 mfc ,但是 Qt 一定要学
(3)代码层次更加清晰
用 mfc
的话, 系统自动生成的代码和自己写的代码,是杂糅在一起的,比如,当界面的控件删除之后,代码就报错,需要自己手动去修改源码
而在Qt
中,系统自动生成的代码和自己写的代码是完全隔离开的
(4)界面美观
Qt 支持 QSS
, 类似于 web 端的 css
, 修改控件的样式, 很简单。
因此,用 Qt 做出来的界面是非常美观的。
(5)2D/3D开发
支持2D/3D图形渲染,支持 OpenGL
,如果做三维应用,首选推荐 Qt
(6)丰富的API、完善的开发文档
Qt 包括多达 250
个以上的 C++ 类,并且提供了非常完善的文档,并且附带有很多例子,对开发者非常友好
(7)嵌入式开发
嵌入式开发,就是指的嵌入式 linux
开发, Qt 是做嵌入式 linux 界面开发最好的,没有之一
在后续的课程中,我也会推出 《嵌入式 QT 开发》
的教程,会支持正点原子
、野火
、韦东山
的系列的开发板
(8)最好会写界面
如果学过了 C++
,但是连一个简单的界面做不出来,有点说不过去
当然你可以最强的是用 C++
做后台,但是界面还是要掌握的,因为通常工作中会写一个带有界面的简单的测试工具,此时 Qt
就派上用场了
(9)最重要一点 - 工资待遇好
本节对应的视频讲解:B_站_链_接
https://www.bilibili.com/video/BV1334y1776z