当前位置: 首页 > news >正文

【Qt Creator】跨平台的C++图形用户界面应用程序开发框架---QT

🍁你好,我是 RO-BERRY
📗 致力于C、C++、数据结构、TCP/IP、数据库等等一系列知识
🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油

目录

  • 1.互联网的核心岗位以及职责
  • 2. QT
  • 3.QT背景介绍
    • 3.1 什么是 Qt
    • 3.2 Qt的发展史
    • 3.3 Qt支持的平台
  • 4.Qt 版本
  • 5.Qt的优点
  • 6 Qt的应用场景
  • 7.QT的成功案例
    • Linux 桌面环境 KDE
    • WPS Office 办公软件
    • Google Earth 谷歌地图
  • 8.Qt的发展前景及就业分析
    • 行业发展方向
    • 就业方面的发展前景:


1.互联网的核心岗位以及职责

互联网的核心岗位主要分为

  1. 开发岗

互联网开发岗是指负责开发互联网产品的工程师。他们需要掌握多种技能,包括前端、后端、数据库等。

主要分为

  • 后端开发
  • 前端开发
  • 算法工程师
  • 游戏开发
  • 等等…

这里面,前端开发又分为

  • 网页前端开发(做网页的)
  • 桌面应用开发(做电脑上的应用程序)
  • 移动应用开发
  1. 测试岗

互联网测试岗是互联网公司中非常重要的一个岗位,主要职责是负责软件测试、功能测试、性能测试、安全测试、自动化测试等相关工作。主要工作内容包括:

  • 编写测试计划和测试用例,根据需求和设计文档编写测试用例。

  • 执行测试,按照测试用例进行测试,并记录测试结果和问题,报告缺陷。

  • 编写测试报告,对测试结果进行分析和总结,并提交给项目负责人和相关开发人员。

  • 参与产品的需求评审、设计评审等工作,为产品的质量提供保障。

  • 熟悉自动化测试工具,能够开发自动化测试脚本,提高测试效率。

  1. 运维岗(管理机器)

互联网运维岗位是指负责维护和管理互联网系统、网络和应用程序的技术人员。他们的主要职责包括确保系统和网络的高可用性、安全性和性能,并及时解决出现的故障和问题。常见的互联网运维工作包括服务器管理、网络管理、数据库管理、应用程序部署和监控、性能调优、安全管理等。互联网运维工程师需要熟练掌握多种技术,如Linux操作系统、网络协议、数据库管理、自动化运维工具、云计算等,并且需要具备快速响应、高效沟通和团队协作的能力。

  1. 产业经理(非技术岗,目的是提出需求)

互联网产品经理是负责互联网产品的规划、设计、推广、运营等工作的专业人员。他们需要通过市场调研、用户需求分析、竞品分析等方式,制定产品策略、产品规划和设计方案,协调各个部门的工作,确保产品按时上线,并通过数据分析、用户反馈等方式持续优化产品。同时,互联网产品经理还需要有敏锐的市场洞察力、较高的沟通协调能力和团队协作能力。


2. QT

QT这个技术主要用于客户端开发,为前端开发的一种,准确的来说QT特指用来进行桌面应用开发(电脑上写的程序)所涉及到的一套技术。

  • 客户端:直接和用户打交道的这一端程序
    比如:chrome、QQ音乐、steam…

客户端是指在客户端-服务器模型中,运行在用户计算机上的软件程序,用于向服务器请求服务并接收响应。通俗地说,客户端就是一个用户使用的软件界面,可以通过它来与服务器进行交互。客户端可以是各种各样的应用程序,比如网页浏览器、即时通讯软件、FTP客户端、邮件客户端等等。
需要注意的是,客户端通常需要遵守一定的协议和规范,以便与服务器进行通信和数据交换。常见的客户端协议包括HTTP、FTP、SMTP、POP3等。

  • 服务器:站在客户端背后的男人

服务器是一种计算机硬件设备,可以提供各种服务,如存储数据、运行应用程序、管理网络等。它通常被用作为网络上的中心化存储设备,以提供可靠和高效的数据存储和处理。服务器通常安装了各种不同的软件和应用程序,以满足特定的需求。例如,Web服务器可以用于托管网站和应用程序,邮件服务器可以用于管理电子邮件等。
另外,服务器也可以分为物理服务器和虚拟服务器。物理服务器是指实际的硬件设备,而虚拟服务器是指在同一台物理服务器上运行的多个虚拟服务器实例。虚拟服务器通常使用虚拟化技术来实现,这种技术可以将一台物理服务器划分为多个虚拟机,每个虚拟机都可以独立运行操作系统和应用程序。

虽然大部分的客户端程序,是需要有背后的服务器做支撑的。
但是确实也有些程序,是不需要服务器的.这样的程序(比如画图板,计算器…)同样也是直接和客户打交道,也可以称为“客户端程序"

QT无法开发网页前端,也无法开发移动应用
目前QT官方也支持移动应用的开发了,但是目前还没有听说有啥知名的商用移动应用程序是QT开发的


3.QT背景介绍

3.1 什么是 Qt

Qt是一个跨平台的C++图形用户界面应用程序框架。它为应用程序开发者提供了建立艺术级图形界面所需的所有功能。它是完全面向对象的,很容易扩展。Qt为开发者提供了一种基于组件的开发模式,开发者可以通过简单的拖拽和组合来实现复杂的应用程序,同时也可以使用C++语言进行高级开发。

在这里插入图片描述

图形用户界面:指采用图形方式显示的计算机操作用户界面,是计算机与其使用者之间的对话接口,是计算机系统的重要组成部分。

3.2 Qt的发展史

1991年Qt最早由奇趣科技开发;

1996年进入商业领域,它也是目前流行的Linux桌面环境KDE的基础;

2008年奇趣科技被诺基亚公司收购,Qt成为诺基亚旗下的编程工具;

2012年Qt又被 Digia公司收购;

2014年4月跨平台的集成开发环境Qt Creator3.1.0发布,同年5月20日发布了Qt 5.3正式版,至此Qt实现了对IOS、Android、Embedded等各平台的全面支持。

3.3 Qt支持的平台

  • Windows-XP、Vista、Win7、Win8、Win2008、Win10
  • Unix/X11-Linux、Sun Solaris、HP-UX、Compaq Tru64UNIX、IBMAIX、SGIIRIX、FreeBSD、BSD/OS、和其他很多X11平台
  • Macintosh -Mac Os x
  • Embedded–有帧缓冲支持的嵌入式Linux平台,Windows CEAndroid
  • Android

4.Qt 版本

目前最新的版本是Qt 6。
但是相对来说Qt 6和Qt 5之间的核心功能区别不大.并且企业中也仍然有大量的项目在使用Qt 5。
因此咱们仍然使用Qt 5版本来进行介绍。

另外Qt在发布的时候还提供了两种许可证。

  • 商业许可:开发者以商业目的使用Qt框架进行开发和发布软件的许可,开发者需要购买商业许可并按照相关规定使用Qt框架。商业许可提供了更多的功能和服务,适合于商业软件开发。
  • 开源许可:开发者以非商业目的使用Qt框架进行开发和发布软件的许可,开发者可以免费使用Qt框架,但需要遵守开源许可协议的要求,如在软件中包含Qt许可协议的声明等。

5.Qt的优点

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

6 Qt的应用场景

  • 桌面应用程序

Qt能够创建各种类型的桌面应用程序,包括文件管理器、媒体播放器、绘图程序等。Qt应用程序支持多种操作系统,可以运行在 Windows、Linux、macOS等桌面操作系统上。

  • 移动应用程序

Qt支持Android和IOS移动操作系统,为应用程序提供了强大的跨平台能力。可以使用Qt构建各种移动应用程序,例如社交应用、游戏、娱乐等。

  • 嵌入式系统

Qt在嵌入式领域应用非常广泛,它可以构建面向各种设备的图形应用程序,在机顶盒、车载娱乐系统、安防监控设备等领域具有广泛的应用。


7.QT的成功案例

Linux 桌面环境 KDE

在这里插入图片描述

WPS Office 办公软件

在这里插入图片描述

Google Earth 谷歌地图

在这里插入图片描述


8.Qt的发展前景及就业分析

Qt 是一个强大且广泛应用于跨平台软件开发的框架。它提供了丰富的工具和库,可用于开发高质量、高效率的图形用巨界面(GUI)应用程序。并且可以在Windows、linux、macOS等多种操作系统上运行。随着行业的发展,Qt的重要性也逐渐体现出来,下面从行业发展方向、就业方面的发展前景以及就业薪资分析Qt的发展前景。

行业发展方向

  • 物联网(loT)和嵌入式系统的发展:

在当下的嵌入式和物联网行业中,Qt的作用逐渐得到了体现,因为可以用它来开发具有GUI界面的嵌入式应用程序,这对于智能家居、汽车以及医疗设备等领域来说,具有非常重要的作用。

  • 自动驾驶和智能交通领域:

现在很多的汽车都引入了自动驾驶的技术,而Qt在其中也有着广泛的应用,它可以开发车载嵌入式系统和用巨界面程序。随着未来自动驾驶技术的发展,Qt在这方面的需求也会不断地增多。

  • 游戏开发:

Qt有一些非常重要的功能模块,例如Qt 3D Studio,可以应用于游戏开发。未来游戏行业的持续发展,Qt在游戏行业的发展将会越来越多。

就业方面的发展前景:

广泛的就业机会:

Qt在各个行业的应用逐渐广泛起来,对于掌握Qt开发能力的人员需求也在不断增加,因此在就业方面,相对比于其他行业来说,Qt 就业面更广,选择性更多。

高薪水和职业发展机会:

Qt作为一项专业技能,掌握此项技术的开发者获得的薪资报酬也是非常可观的,具有更多的职业发展机会。总之就是,如果掌握了Qt开发技术,未来的发展前景还是非常不错的。

相关文章:

【Qt Creator】跨平台的C++图形用户界面应用程序开发框架---QT

🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 1.互联网的核心岗位以及职…...

KingbaseES数据库物理备份还原sys_rman

数据库版本:KingbaseES V008R006C008B0014 简介 sys_rman 是 KingbaseES 数据库中重要的物理备份还原工具,支持不同类型的全量备份、差异备份、增量备份,保证数据库在遇到故障时及时使用 sys_rman 来恢复到数据库先前状态。 文章目录如下 1.…...

【CV】视频图像背景分割MOG2,KNN,GMG

当涉及背景分割器(Background Subtractor)时,Mixture of Gaussians(MOG2)、K-Nearest Neighbors(KNN)和Geometric Multigid(GMG)是常用的算法。它们都用于从视频流中提取…...

使用 Python 简单几步去除 PDF 水印

推荐一个AI网站,免费使用豆包AI模型,快去白嫖👉海鲸AI 在处理 PDF 文件时,水印有时会影响文件的可读性或美观性。幸运的是,Python 提供了多种库来操作 PDF 文件,其中 PyMuPDF(又名 fitz&#xf…...

【香橙派 AIpro】OrangePi AIpro :教育、机器人、无人机领域的超级AI大脑,华为昇腾处理器驱动的AI开发板新标杆

【OrangePi AIpro:教育、机器人、无人机领域的超级AI大脑,华为昇腾处理器驱动的AI开发板新标杆】 文章目录 一、开箱与初印象1. 初印象2. 上手开机3. 安装和运行 TightVNC 远程桌面3.1. 安装 TightVNC 服务器3.2. 启动 VNC 服务器3.3. 在 Windows 上使用…...

【Mac】 CleanMyMac X for mac V4.15.2中文修复版安装教程

软件介绍 CleanMyMac X是一款为Mac设计的优秀软件,旨在帮助用户优化其设备的性能并提供清理和维护功能。以下是 CleanMyMac X的一些主要功能和特点: 1.系统性能优化:软件可以扫描和修复潜在的性能问题,包括无效的登录项、大文件…...

单片机通信协议(1):SPI简介

关于SPI SPI(串行外设接口)是板载设备间通信接口之一。它是由摩托罗拉公司(飞思卡尔半导体)推出的。由于其简单性和通用性,它被纳入各种外围设备中,并与飞利浦I2C总线并列。 SPI的三线或四线信号数量比IIC…...

免税商品优选购物商城,基于 SpringBoot+Vue+MySQL 开发的前后端分离的免税商品优选购物商城设计实现

目录 一. 前言 二. 功能模块 2.1. 登录界面 2.2. 管理员功能模块 2.3. 商家功能模块 2.4. 用户前台功能模块 2.5. 用户后台功能模块 三. 部分代码实现 四. 源码下载 一. 前言 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过…...

京准电子、NTP电子时钟系统(网络时钟系统)概述

京准电子、NTP电子时钟系统(网络时钟系统)概述 京准电子、NTP电子时钟系统(网络时钟系统)概述 时钟系统工作原理是由母钟接收GPS/北斗卫星的时间信息,母钟通过串口和NTP以太网接口为其他各系统提供统一的标准时间信号&…...

【常用的队列总结】

文章目录 队列的介绍Queue队列的基本概念与操作队列的基本概念 常见的队列介绍非阻塞队列LinkedList:ArrayDeque:PriorityQueue: 阻塞队列ArrayBlockingQueueLinkedBlockingQueuePriorityBlockingQueue DelayQueueSynchronousQueue 队列的介绍 Queue队列的基本概念与操作 在 …...

机器学习过拟合和欠拟合!看这一篇文章就够了 建议收藏!(上篇)

在机器学习中,有一项非常重要的概念,那就是:过拟合(Overfitting)和欠拟合(Underfitting)。 它们涉及到机器学习中常见的两种模型性能问题,分别表示模型在训练数据上表现得过于复杂或…...

关于阳光雨露外派联想的面试感想

最近在找工作,接到了一个阳光雨露外派联想的面试邀请。说实在的一开始就有不对劲的感觉。想必这就是大厂的自信吧,上就问能不能现场面试,然后直接发面试邀请。这时候我倒是没觉得有啥问题。 然后今天就去面试去了,住的比较偏&…...

深度神经网络介绍与实战

一、介绍 深度神经网络(Deep Neural Networks,DNNs)是一种强大的机器学习算法,被广泛应用于计算机视觉、自然语言处理、语音识别等领域。它是人工神经网络的一种扩展,包含多个隐藏层,每一层都由多个神经元组成。 与传统的机器学习算法相比,深度神经网络具有以下特点:…...

图解 Transformer

节前,我们星球组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学. 针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 汇总合集&…...

SpringCloud配置文件bootstrap不生效问题解决

解决方案&#xff1a; 情况一、SpringBoot 版本 小于 2.4.0 版本&#xff0c;添加以下依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-context</artifactId> </dependency> 情况二、SpringBoot…...

Java面试八股之自旋是什么意思

Java中的自旋是什么意思 自旋是多线程编程中的一种同步机制&#xff0c;尤其在Java中与锁的实现密切相关。当一个线程尝试获取某个锁&#xff08;如内置锁或显式锁&#xff09;时&#xff0c;如果锁已被其他线程持有&#xff0c;通常的做法是将该线程置于阻塞状态&#xff0c;…...

做好随时离开的准备:前一天还在为618加班到凌晨,第二天就被裁了

今日感悟 最近&#xff0c;一则令人唏嘘的新闻在网络上引起了广泛关注&#xff1a;一名员工前一天还在为618大促活动加班到凌晨&#xff0c;身心疲惫&#xff0c;然而第二天却收到了裁员通知&#xff0c;顿时陷入了失业的困境。 这则新闻不仅揭示了职场竞争的残酷现实&#xff…...

利用ESP32(Arduino IDE)向匿名上位机发送欧拉角

文章目录 一. 匿名上位机介绍二. 匿名协议说明1. 匿名协议官方说明文档2. 协议说明 三. 向匿名上位机发送数据(基于Arduino IDE的esp32)四. 运行效果 一. 匿名上位机介绍 匿名上位机官方介绍视频 匿名上位机官方下载 二. 匿名协议说明 1. 匿名协议官方说明文档 官方对于协…...

Java开发工具类(JDK、Hutool、Guava)

目录 Java开发常用的工具类1、JDK自带程序读取控制台输入内容&#xff08;调试程序或者学习的时候比较有用&#xff09;Arrays工具类 数组转集合Collections 集合工具类 排序Collections 集合工具类 查找Lambda表达式 操作集合 收集、转map、分组 2、Apache 的 commons-lang3 和…...

TCP协议的相关特性

目录 正文&#xff1a; 1.可靠性 2.连接管理 3.滑动窗口 4.流量控制 5.拥塞控制 6.延迟应答 7.捎带应答 总结&#xff1a; 正文&#xff1a; 1.可靠性 TCP协议是一个有连接&#xff0c;可靠传输&#xff0c;面向字节流&#xff0c;全双工的协议。其中可靠传输的实现…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

UDP(Echoserver)

网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法&#xff1a;netstat [选项] 功能&#xff1a;查看网络状态 常用选项&#xff1a; n 拒绝显示别名&#…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...

Spring Boot面试题精选汇总

&#x1f91f;致敬读者 &#x1f7e9;感谢阅读&#x1f7e6;笑口常开&#x1f7ea;生日快乐⬛早点睡觉 &#x1f4d8;博主相关 &#x1f7e7;博主信息&#x1f7e8;博客首页&#x1f7eb;专栏推荐&#x1f7e5;活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型&#xff08;LLM&#xff09;参数规模的增长&#xff0c;推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长&#xff0c;而KV缓存的内存消耗可能高达数十GB&#xff08;例如Llama2-7B处理100K token时需50GB内存&a…...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器

拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件&#xff1a; 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...

在 Spring Boot 中使用 JSP

jsp&#xff1f; 好多年没用了。重新整一下 还费了点时间&#xff0c;记录一下。 项目结构&#xff1a; pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...

Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?

Pod IP 的本质与特性 Pod IP 的定位 纯端点地址&#xff1a;Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址&#xff08;如 10.244.1.2&#xff09;无特殊名称&#xff1a;在 Kubernetes 中&#xff0c;它通常被称为 “Pod IP” 或 “容器 IP”生命周期&#xff1a;与 Pod …...

Linux中《基础IO》详细介绍

目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改&#xff0c;实现简单cat命令 输出信息到显示器&#xff0c;你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...