Qt软件是最好的跨平台的GUI开发框架

软件名称:Qt人机界面HMI开发工具软件
软件平台:Windows,Linux和macOS等14种OS
开发商:Qt Company
软件授权:商业授权、LGPL、GPL
研发时间:1991年
企业类型:欧洲芬兰纳斯达克上市
公司规模:500人左右
公司背景:科尤特软件是Qt在中国的子公司。

Qt人机界面GUI产品
(1)设计工具:Qt Design Tools
(2)开发工具:Qt Development Tools
(3)质量保证工具:Testing-tools  (Squish\Coco\Test center)
(4)数字广告工具:Qt Digital Advertising Platform

Qt应用场景:
开发的移动端ARM、嵌入式Linux、X86 PC端,
(1)汽车行业:汽车智能座舱娱乐主机仪表系统,ADAS、ARHUD、自动泊车、激光雷达。客户有:奔驰、Stellantis、大众、保时捷、沃尔沃、起亚现代、丰田、日产、本田、Teala、松下、电装、哈曼、均胜、伟世通、航盛、东软、德赛西威。
(2)手机公司:华为、VIVO、OPPO、联想、小米、苹果等手机厂商。
(3)移动互联网行业:字节跳动剪映、华为花瓣、美图秀秀、网易、百度、阿里巴巴。
(4)证券行业:华泰证券、国信证券等大部分证券期货交易系统,特定跨平台和实时性。
(5)信创行业:麒麟、统信OS,华为、海思、联想,华三、大华、海康、宇视。
(6)机器视觉行业:康耐视、云从、商汤、奥普特、思谋。
(7)工业自动化行业:HMI工业组态屏,西门子、ABB、施耐德、汇川、大族,信捷。
(8)电话会议系统:思科、微软、腾讯会议、亿联、新网锐捷。
(9)EDA行业:Mentor、Synopsys、Cadence、华大九天、芯和半导体。
(10)半导体行业嵌入式设备:ASML、上海微电子、恩智浦,海思半导体,华星光电,天马微电子。
(11)医疗器械行业:手术机器人、CT数字化影像设备,通用医疗、东软、西门子、史密斯、联影大部分医疗产品。
(12)通讯设备行业:华为、中兴、爱立信、西门子。
(13)仪器仪表行业:赛默飞,安捷伦、是德、罗德施瓦茨。
(14)军工行业:海陆空天军工装备,中国航天、航天科工、中国兵器、兵器装备、中国电子、中国科学院。

Qt开发的知名的桌面端应用程序:

(1)3D Slicer: a free open source software for visualization and medical image computing;(是一个基于VTK的开源的可视化和医学影像计算的软件)
(2)ParaView: 也是一个基于VTK的数据可视化的工具软件,在流体力学、空气动力学、生物医学、统计学等有数据可视化需求的领域中发挥重要的作用;
(3)Google Earth: Google开发的一款三维虚拟地图软件;
(4)Opera: 著名的网页浏览器,在欧洲的市场占有率很高;
(5)Qt Creator: the free software cross-platform integrated development environment from Nokia;(是由诺基亚开发的一个可以跨平台的集成IDE)
(6)Skype: 一个基于P2P的VOIP聊天软件;
(7)VirtualBox: Oracle开发的虚拟机软件;
(8)YY语音:是一个可以进行在线多人语音聊天和语音会议的免费软件,在中国拥有庞大的用户群;
(9)咪咕音乐:是中国移动倾力打造的正版音乐播放器。
(10)WPS Office: 金山公司(Kingsoft)出品的办公软件,与微软Office兼容性良好。
(11)Adobe
(12)Google Blizzard
(13)AutoDesk

什么是Qt?
Qt 是一个1991年由Qt Company开发的跨平台C++图形开发工具。是一个跨平台的 C++ 图形用户界面库,可以同时支持X86桌面应用程序开发、Linux嵌入式开发和ARM移动开发,覆盖了现有的所有主流平台。
2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。
2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于iOS的完全支持,新增WinRT、Beautifier等插件,集成了基于Clang的C/C++代码模块,并对Android支持做出了调整,至此实现了全面支持iOS、Android、WP,它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。
2021年8月,发布Qt 6.2版本。

可以做什么?
使用 Qt 开发的程序非常多。自从1997年Qt被用来开发Linux桌面环境KDE大获成功开始以来,Qt就成为了Linux 环境下开发 C++ GUI 程序的事实标准。

虽然在Windows下,GUI解决方案比较多,基于C++的有Qt、MFC、WTL、wxWidgets、DirectUI、Htmlayout等等,基于C#的有 WinForm、WPF等等,基于Java的有AWT、Swing等等,但是Qt依然占据了很大部分。

在消费类电子、工业控制、军工电子、电信/网络/通讯、航空航天、汽车电子、医疗设备、仪器仪表等相关行业,也都有使用 Qt 开发工具。

Qt有什么特点优点?
简单易学

Qt 封装的很好,少量代码就可以开发出一个简单的客户端,他的宗旨也是 code less , crate more 。

面向对象

良好封装机制使得Qt的模块化程度非常高,可重用性较好,便于移植。这一点对于用户开发来说是非常方便高效的。

并且Qt提供了一种称为信号与槽signals/slots的安全类型来替代callback,这使得各个功能模块之间的协同工作变得十分简单,也很容易理解。

大量的开发文档

前些年资料还是很少的,但是随着Qt的发展以及越来越多的开发者,资料也越来越丰富了,这些都能够成倍降低学习成本。

漂亮的界面

Qt 很容易做出漂亮的界面和炫酷的动画,并且支持 2D/3D 图形渲染,支持 OpenGL,而 MFC、WTL、wxWidgets 比较麻烦。

独立安装

Qt 程序最终会编译为本地代码,不需要其他库的支撑,而Java要安装虚拟机,C#要安装 .NET Framework。

优良的跨平台特性

如果你的程序需要运行在多个平台下,同时又希望降低开发成本,Qt 几乎是必备的。

Qt值得学习吗?
详解Qt的几种开发方式

丰富的 API

Qt包括几百个C++类,还提供基于模板的file,I/O device,directory management,collections,serialization,date/time 类等等。

如果用户使用 C++,并且对库的稳定性,健壮性要求比较高,并且希望跨平台开发的话,那么使用 Qt 是较好的选择。

因为Qt是给两种应用设计的框架。

一种是必须跨平台的应用,无论如何都要支持两个或以上平台,并且两个平台要求功能同步,交互体验基本一致,但是开发成本不能成倍增加,Qt基本就是最好的选择了。

第二种是规模很大的应用,源代码规模在至少30万行以上,并且带有复杂UI交互,对发布的时间进度有较高要求,开发组规模在10人或以上。不符合以上两种情况的应用虽然也可以用Qt开发,但是和用其他技术比起来没有特别突出的优势。

发布者

刘东

联系站长:liudong@salesmarkting.com

发表评论

邮箱地址不会被公开。 必填项已用*标注