QT背景介绍

简介: QT背景介绍

一、QT背景

1.1什么是QT

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

QT技术用于客户端开发

客户端:直接和用户打交道的这一类程序,如Chrome、Steam等等

客户端开发的重要任务:编写和用户交互的界面。

用户交互界面有两种典型风格

1、命令行界面/终端界面-->TUI(专业软件,一般使用者为程序员)

2、图形化界面-->GUI(普通用户)

然而QT是用来编写桌面的GUI程序的一套框架

1.2QT的发展历史

  • 1991年 Qt最早由芬兰奇趣科技开发
  • 1996年 进入商业领域,它也是目前流行的Linux桌面环境KDE的基础
  • 2008年 奇趣科技被诺基亚公司收购,Qt称为诺基亚旗下的编程基础
  • 2012年 Qt又被Digia公司(芬兰一家软件公司)收购
  • 2014年4月 跨平台的集成开发环境Qt Creator3.1.0发布,同年5月20日配发了Qt5.3正式版,至此Qt实现了对iOS、Android、WP等各平台的全面支持。

1.3什么是框架、库

框架是一个基本概念上的结构,用于解决或者处理复杂问题的一种结构化的设计体系。它可以把软件的通用功能抽象出来,形成一组组件或工具集,以方便开发者使用。框架通常包含了为实现某一类软件而设计的一组抽象类以及基于这组抽象类的扩展类,从而为软件重用提供强有力的支持。

库是一组预先编写好的代码集合,通常用于执行特定的任务或实现特定的功能。这些代码集合可以被多个程序或项目重复使用,以提高开发效率,减少代码冗余,并促进代码重用。库通常由函数、类、变量、数据结构和相关的文档组成。

框架:是程序员配合框架,完善填充框架中的一些细节

库:是被程序员调用的

1.4QT支持的平台

  • 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

1.5QT的优点

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

1.6QT的应用场景

  • 桌面应用程序;
  • 移动应用程序;
  • 嵌入式应用程序

1.7QT的成功案例

  • Linux桌面环境KDE(K Desktop Environment)
  • WPS Office 办公软件
  • Skype 网络电话
  • Google Earth 谷歌地球
  • VLC多媒体播放器
  • VirtualBox虚拟机软件

 

❤️结语:

本次精彩内容已圆满结束!希望各位读者在阅读过程中能够收获满满。在此,特别感谢各位读者的支持与三连赞。如果文章中存在任何问题或不足之处,欢迎在评论区留言,蜗牛必定会认真对待并加以改进,以便为大家呈现更优质的文章。你们的支持与鼓励,将是博主不断前进的最大动力。再次感谢大家的陪伴与支持!

相关文章
【MATLAB第22期】基于MATLAB的xgboost算法多输入多输出回归模型 已购用户可在之前下载链接免费获取
【MATLAB第22期】基于MATLAB的xgboost算法多输入多输出回归模型 已购用户可在之前下载链接免费获取
|
5月前
|
存储 人工智能 自然语言处理
通义灵码 vs. GitHub Copilot:中国AI编码工具的破局之道
全球AI编码工具形成“双极格局”,GitHub Copilot凭借先发优势主导市场,而通义灵码通过差异化路径突围。技术层面,通义灵码在中文语境理解、云原生绑定上展现优势;生态方面,Copilot依托GitHub开源生态,通义灵码则深耕阿里云企业协同场景;开发者心智战中,通义灵码以数据合规、本土化服务及定制化能力取胜。这场较量不仅是技术的比拼,更是生态逻辑与开发者需求的全面博弈,彰显中国AI编码工具“换道超车”的潜力。
686 19
|
Windows
解决windows下Qt Creator显示界面过大的问题
解决windows下Qt Creator显示界面过大的问题
|
11月前
|
SQL 监控 关系型数据库
SQL错误代码1303解析与处理方法
在SQL编程和数据库管理中,遇到错误代码是常有的事,其中错误代码1303在不同数据库系统中可能代表不同的含义
|
SQL HIVE
Hive 中 4 个 By 的区别
Hive 中 4 个 By 的区别
485 1
|
算法 数据挖掘 计算机视觉
刷力扣必备ImageMagick: 强大的图像处理套件
刷力扣必备ImageMagick: 强大的图像处理套件
刷力扣必备ImageMagick: 强大的图像处理套件
|
监控 安全 物联网
物联网设备间通信协议选择的技术探讨
【7月更文挑战第31天】物联网设备间的通信协议选择是一个复杂而重要的决策过程。通过综合考虑应用场景、设备资源、网络环境、安全性、兼容性以及扩展性等多个因素,我们可以为物联网系统选择最合适的通信协议,从而构建出高效、可靠、安全的物联网生态系统。未来,随着物联网技术的进一步普及和深入应用,我们有理由相信,更多的创新通信协议将不断涌现,为物联网设备间的通信提供更加灵活、高效、安全的解决方案。同时,随着标准化进程的加速推进,不同协议之间的互操作性和兼容性也将得到进一步提升,为物联网系统的集成和扩展提供更加便捷的途径。
|
搜索推荐 编译器 开发者
应用程序的运行:原理、过程与代码实践
应用程序的运行:原理、过程与代码实践
478 1
|
Shell
openvpn_connect.sh 连接,内网拨号上网,断网续联
shell 脚本 配置 openvpn 连接,断网续联
309 0