Qt6入门教程 1:Qt简介

在学校做东西用的是MFC(VC++6.0),入门看的是《孙鑫VC++6.0视频教程》,孙老师讲的是真的好。
毕业后就一直用Qt做开发了,用的第一个版本是Qt 4.7.2,如果非要和MFC做比较的话,Qt的优点就是跨平台、开发GUI效率更高。
Qt6入门教程 1:Qt简介_第1张图片
Qt官网:Qt Documentation | Home

一.Qt概述

Qt是一个跨平台的C++图形用户界面(GUI)应用程序框架,它为应用该程序开发者提供建立艺术级图形界面所需的所有功能,它是完全面向对象的,很容易扩展,并且允许真正的组件编程。
Qt6入门教程 1:Qt简介_第2张图片

1.Qt的发展史

1991年,Qt最早由奇趣科技开发。
1996年,进入商业领域,它也是目前流行的Linux桌面环境KDE的基础。
2008年,奇趣科技被诺基亚公司收购,Qt成为诺基亚旗下的编程语言。
2009年,诺基亚Qt Software宣布Qt源代码管理系统面向公众开放。
2012年,Qt又被Digia公司收购。
2014年4月,跨平台的集成开发环境Qt Creator3.1.0发布,同年5月20日发布了Qt5.3正式版,至此Qt实现了对iOS、Android、WP等各平台的全面支持。
2015年7月,发布了Qt5.5版本。
2019年12月,发布了Qt5.14版本。
2020年5月,发布Qt 5.15版本,它是Qt5的最后一个长期支持版本,支持至 2025 年。
现在的最新版本是Qt6.6,但Qt5.5是长期支持版本。
Qt6开始已经不支持Win7了,而且Win10也只支持64位,不支持32位。
Qt5.15系列是最后支持Win7的版本,后面的Qt6系列版本需要更改源码编译才能支持Win7。
Qt4.8.7是Qt4的终结版本,是Qt4系列版本中最稳定最经典的(很多嵌入式板子还是用Qt4.8)。
Qt5.6开始不支持QtWebkit了。
Qt5.6.3是最后支持XP系统的长期支持版本。
Qt5.7.0是最后支持XP系统的非长期支持版本。
Qt5.12.3是最后提供mysql数据库插件的版本,往后的版本需要自行编译对应的mysql数据库插件,官方安装包不再提供。
Qt5.14.2是最后提供二进制安装包的版本,后面的版本都需要在线安装。
Qt经过了20年的发展,网上的资料又多又杂。而我们站在当前这个时间点,了解Qt的发展史,才能更好的选择适合自己的Qt版本,比如说如果想兼容XP该选哪个版本,如果想使用QtWebkit该使用哪个版本。也可以更好的理解为什么网上有人这么说,我照着做了为什么不对……

2.Qt支持的平台

Windows - XP、Vista、Win7、Win8、Win2008、Win10
Linux、Solaris、SunOS、HP-UX、Digital UNIX、Irix、FreeBSD、BSD/OS、SCO、AIX、OS390、QNX和其他很多X11平台
Macintosh - Mac OS X
Embedded - 有帧缓冲支持的嵌入式Linux平台,Windows CE
不同的公司使用的开发环境可能是不一样的,我们学会了Qt不止可以做某一平台下的客户端,还可以做很多平台通用的客户端软件,比如Windows下客户端的开发、嵌入式开发……这对我们找工作来说是非常友好的,可以有更多的工作机会

3.Qt支持的开发语言

C++和QML
Qt类库由C++编写,Qt对C++进行了扩展,引入了信号与槽、属性等机制
QML是Qt自创的编程语言,类似于JavaScript的声明式语言
Qt for MCUs目前只支持QML
作为一个经历过Qt4~Qt6的三朝元老,可以明显的感觉到Qt在主推QML。虽然最近四年在用QML开发,但我还是比较喜欢用QWidget,写的博客大多也是QWidget的。
Python
C++类库可以转换为Python绑定,可以用Python语言编程调用Qt类库进行GUI程序开发。
PyQt是Riverbank Computing公司开发的Qt类库的Python绑定,是目前应用比较广泛的Qt类库的Python绑定。

二.Qt和KDE

之前提到Qt原本是商业授权软件,是怎么开源的呢?这就涉及Qt和KDE的纠葛了。
KDE是Linux操作系统的桌面环境,与GNOME桌面是类似的,作为开源桌面它们竞争的情况更为多见。
KDE是采用GPL许可证发布的开源软件,而最初Qt是商业授权的,存在商业侵权风险,GNOME则是基于开源GTK库的,没有什么商业风险,这一度是GNOME优越于KDE的特性。
由于Qt的商业授权,KDE社区一度混乱纠结,与此同时GNOME则如火如荼发展起来了。KDE毕竟算是亲儿子,被另一波人欺负,奇趣科技公司当然看不下去了,最后是奇趣科技公司为了赢得开发者的支持,为Qt增加了GPL的开源授权, 对于开源社区而言,遵循GPL使用Qt就不需要付费,这为KDE解决了燃眉之急。
之后KDE桌面和GNOME都发展壮大起来,都做得越来越好了。

三.GPL和LGPL

除了商业授权,目前Qt的开源授权有两种,一种是GPL授权,另一种是LGPL授权(诺基亚收购后新增)。
对这两种开源授权,简单来说,使用GPL版本的软件一定还是GPL的开源软件,无论是使用了Qt的程序代码还是修改了Qt库代码,都必须按照GPL来发布,这是GPL的传染性。
GPL是什么都要开源,这对商业软件应用是不利的,所以诺基亚增加了LGPL授权 (第一个L可以叫Lesser宽松版或Library开发库版)。使用LGPL授权就可以利用Qt官方动态链接库,而不必开放商业代码。只要不修改和定制Qt库,仅使用Qt官方发布的动态链接库就可以不开源,这是商业友好的授权模式。
其实只要不是做商业,就不太需要关注用什么授权,以GPL授权发布程序代码就可以了。
世界上的开源协议有上百种,很少有人能彻底搞清它们之间的区别,即使在最流行的六种开源协议——GPL、BSD、MIT、Mozilla、Apache 和 LGPL——之中做选择,也很复杂。
乌克兰程序员Paul Bagwell画了一张分析图,说明应该怎么选择开源协议,大家看了一目了然,真是清爽。
Qt6入门教程 1:Qt简介_第3张图片

四.我们为什么选择Qt?

1.Qt的优点有哪些?

●跨平台,几乎支持所有的平台。
●接口简单、容易上手、学习Qt框架对学习其他框架有参考意义。
●一定程度上简化了内存回收机制。
●开发效率高,能够快速的构建应用程序。
●有很好的社区氛围,市场份额在缓慢上升。
●可以进行嵌入式开发。

更多优点可参考:用Qt开发的10大理由

2.我们熟知的Qt开发的著名软件有哪些?

Linux桌面环境KDE
WPS Office办公软件
Adobe Photoshop Album
Skype网络电话
Google Earth谷歌地图
VLC多媒体播放器
VirtualBox虚拟机软件
Bitcoin比特币
咪咕音乐
极品飞车

参考链接:Qt简介:我们为什么选择Qt - 掘金

参考链接:60分钟让你高定,Qt全部基础知识架构 - 知乎

原文链接:Qt6入门教程 1:Qt简介-CSDN博客 

你可能感兴趣的:(Qt6入门教程,Qt,Qt简介,Qt入门教程)