Qt入门——什么是Qt?
Qt背景介绍
什么是Qt?
Qt 是⼀个 跨平台的 C++ 图形用户界面应用程序框架 。它为应用程序开发者提供了建立艺术级图形界面所需的所有功能。它是 完全面向对象 的,很容易扩展。Qt 为开发者提供了 ⼀种基于组件的开发模式 ,开发者可以通过简单的拖拽和组合来实现复杂的应用程序,同时也可以使用C++ 语言进行高级开发。
图形用户界面:指采用图形方式显示的计算机用户操作界面,是计算机与其使用者之间的对话接口,是计算机系统的重要组成部分。比如你的手机/电脑上的界面,都是一种图形化的用户界面
而Qt就是用来开发图形化界面的一门技术,使用Qt进行图形化界面开发,它有两种开发方式:一种是在界面上拖拽组件(有点像画画的方式),一种是用C++代码编写 ,比如你想在界面上布置一个按钮,你可以通过将Qt已有的"按钮"组件,直接将“按钮”拖到界面上合适的位置进行放置,也可以使用C++语言编写代码时按钮放置在界面上
Qt主要用来干什么?:
前面说了Qt可以用来开发图形化界面,那么它其实就属于前端技术中的一类,前端开发又分为(网页前端开发、桌面应用开发、移动应用开发),准确的说Qt特指桌面应用开发涉及的一套技术,它不能进行网页前端开发,也不能进行移动应用开发(目前Qt官网也支持移动应用开发了,但是目前没有听说过知名的商用移动应用是Qt开发的)
直接和用户打交道(供用户使用)的程序又叫做"客户端",所以用来开发用户图形化界面的Qt也是一种客户端开发技术
Qt的发展史:
1991年:Qt最早由奇趣科技开发
1996 年:进入商业领域,它也是目前流行的 Linux 桌面环境 KDE 的基础;
2008年:奇趣科技被诺基亚公司收购,Qt就成为诺基亚旗下的编程工具;
但是呢诺基亚的结局我们都知道,也就是凉凉了~
在2012年诺基亚宣布将Qt软件业务出售给芬兰IT服务公司Digia
在2013年7月3日,Digia公司Qt开发团队在其官方博客上宣布Qt 5.1正式版发布
2014 年 4 月跨平台的集成开发环境 Qt Creator3.1.0 发布,同年 5 月 20 日发布了 Qt 5.3 正式版,至此 Qt 实现了对 IOS、Android、Embedded 等各平台的全面支持。
Qt支持的平台(几乎支持所有平台)
- Windows ‒ XP、Vista、Win7、Win8、Win2008、Win10
- Unix/X11 ‒ Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX、FreeBSD、
- BSD/OS、和其他很多 X11 平台
- Macintosh ‒ Mac OS X
- Embedded ‒ 有帧缓冲支持的嵌⼊式 Linux 平台,Windows CE
- Android
Qt支持的系统
1)windows(各个版本)
2)Linux(各种发行版),尤其是Linux中的KDE桌面基于Qt构建的
3)Mac系统
4)嵌入式系统(嵌入式系统也是Qt实际开发中的一个主要战场,日常使用的一些家电或者一些工业设备内部也有计算机,是一种专用的计算机,也可以称为嵌入式系统,有些嵌入式系统也需要图形化界面,此时就可以使用Qt进行开发)
Qt的优点
- 跨平台,几乎支持所有的平台;
- 接口简单,容易上手,学习Qt框架对学习其他框架由参考意义。
- 一定程度上简化了内存回收机制;
- 开发效率高,能够快速的构建应用程序;
- 有很好的社区氛围,市场份额在缓慢上升;
- 可以进行嵌入式开发
Qt的行业发展方向:
物联网(loT)和嵌入式系统的发展
在当下的嵌入式和物联网行业中,Qt 的作用逐渐得到了体现,因为可以⽤它来开发具有 GUI 界面的嵌入式应用程序,这对于智能家居、汽车以及医疗设备等领域来说,具有非常重要的作用。
现在很多的汽车都引⼊了自动驾驶的技术,而Qt 在其中也有着广发的应用,它可以开发车载嵌入式系统和用户界面程序。随着未来⾃动驾驶技术的发展,Qt 在这方面的需求也会不断地增多。
游戏开发:
Qt 有一些非常重要的功能模块,例如 Qt 3D Studio,可以应用于游戏开发。未来游戏行业的持续发展,Qt在游戏行业的发展将会越来越多。