赞
踩
目录
一般来说,计算机的岗位有四种,分别是:
在前端开发中,存在着三种常见的前端开发场景:
而Qt是使用于前端开发中的桌面应用开发种的“客户端开发”的。
客户端:客户端是直接和用户打交道的这一端的程序。例如:chrome、qq音乐、steam等等。
一般来讲,在联网的情况之下,客户端的背后是服务器,客户端一般来讲是服务器所支撑着的。但是并非所有的客户端程序的背后都需要服务器的,例如计算机,画图板等等也是不需要服务器的。
换一种方式来讲,“客户端程序”也是直接与客户进行交互的。所以,准确来讲,Qt特指用来进行桌面应用开发(电脑上写的程序)种所涉及的一套技术,Qt是无法进行开发网页前端额移动应用的。
【注意】关于移动应用的开发,目前Qt官方也是支持移动应用的开发的,但是目前还没有较为知名的商用移动应用程序是Qt开发的。
在客户端进行开发的过程中,其重要任务是:编写和用户交互的界面。
在与用户进行交互的界面中,俩种典型的风格是:
命令行界面,也就是文本用户界面TUI,是指文本用户界面(Text-based User Interface),通过文本实现交互窗口展示内容,定位光标和鼠标实现用户交互。这种场景主要被专业人员使用,例如程序员。
图形化界面,是图形化用户界面GUI,图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。其使用场景是普通用户。
Qt是用编写桌面的GUI程序的一套框架。
在Windows环境下,可以使用多种解决方案来编写GUI程序,Qt只是其中的一种。
在Windows环境下,可以开发GUI的方案(根据历史进程介绍):
除此之外,GTK、WXwidge的影响力不是很大。
这些方案都是基于C/C++搭建出来的一些GUI开发的技术体系。
与此同时,微软在之后自发的创建出一种新的编程语言C#(C sharp)。
Electron这个技术体系最初是用来开发“atom”这个文本编辑器的,atom是Github开发的,但是后续atom被微软开发的VSCode所代替。
使用Electron的缺点是,Electron开发出来的程序,其运行速率是低于之前原生开发的技术体系的。
总而言之,Qt虽然仅仅是众多解决方案中的一种,但是价值还是蛮高的,使用Qt的商业公司的产生的产品也是非常多的。
Qt相比较其他的方案最明显的优势是:可以支持Windows、Linux、max等平台。
Qt是一个跨平台的C++图形用户界面应用程序框架。它为应用程序开发者提供了建立艺术级图形界面所需的所有功能。Qt是完全面向对象的,很容易扩展。Qt为开发者提供了一种基于组件的开发模式,开发者可以通过简单的拖拽和组合来实现复杂的应用程序,同时也可以使用C++语言来进行高级开发。
【框架】:本质上就是一些大佬发明的,可以让普通程序员写出的代码变得更加靠谱。
一个程序越自由,越灵活,也就意味着越容易出现问题,一个优秀的框架可以限制程序员的出错率,同时也就保证出错成本。在C++学习的过程中,有库这个概念,而库和框架的类似之处就是其都是大佬将代码实现完成,供别人使用的,二者不同之处在于库是被程序员所调用的,即库是主体;而框架则是主体,程序员配合框架,完善填充框架中流出的一些细节。
学习过Java这个编程语言,对于框架来说是并不陌生的,而对于C++工程师,在编写C++代码的时候,框架也是十分重要的。C++的生态是割裂的,离散的,这与Java不同,Java存在着一些spring这样的社区,但是在C++不同的开源社区或者大厂公司中,也都会拥有各自的框架。
相比之下,像Qt这种能够被大家共同认可的框架,在整个C++生态中都是不多见的。
【图形用户界面】:指的是采用图形方式显示的计算机操作用户界面,是计算机与使用者之间的对话接口,是计算机系统的重要组成部分。
在计算机的1991年,诞生了很多有意思的产物:Qt、python、vim、openGL、Linux...
对于诺基亚手机,起初的塞班系统是最早的智能手机系统,在当时,诺基亚就主推Qt作为开发塞班系统应用程序的解决方案,但是随着诺基亚公司的崩塌对于Qt的影响也是极大的。
这里想说明一点,时代的更替速度是很快,把握当下,开辟未来,享受过去。
在上述所支持的平台中,简单说明就是:
【Linux平台】:Linux主要是给服务器使用的,服务器不需要图形化界面(TUI:基于命令操作,门槛更高,效率也就更高;GUI:基于图形化界面,门槛低,效率也就更低),但是也有少数用户使用Linux作为界面,在Linux桌面环境中,存在着多套桌面环境,例如:GNOME(基于GTK构建的),KDE(基于Qt构建的),但是Linux桌面在使用过程中存在着诸多问题。
【嵌入式系统平台】:嵌入式系统也是Qt实际开发中的一个主要场景,嵌入式系统需要低配置以及低成本。嵌入式系统一般使用在日常生活中,比如冰箱、洗衣机、路由器、投影仪等等,这些设备的内部也是有计算机的,但是这些设备里面的计算机硬件配置不是很高。
有些嵌入式系统,也是需要运行图形化界面的程序的,这个时候Qt的作用还是蛮大的,尤其是在一些工业领域中,但是,随着时代的更替,在工业领域中,Qt也收到了Android的挑战。
目前来说,其最新版本是Qt6,但是相对于Qt6和Qt5之间的核心功能区别不大,并且企业中也仍然有大量的项目使用Qt5,后续的我会以Qt5来进行输出。
【注意】在软件开发中,并非是越新越好,在进行商业开发的时候,相比引入新的特性,不如优先确保不引入严重的问题。
同时,Qt在发布的时候还提供了俩种许可证:
Qt能够创建各种类型的桌面应用程序,包括文件管理器、媒体播放器、绘图程序等等。Qt应用程序支持多种操作系统,可以运行在Windows、Linux、macos等桌面操作系统上。
Qt支持Android和IOS移动操作系统,为应用提供了强大的跨平台能力。可以使用Qt构建各种移动应用程序,如社交应用、游戏、娱乐等等。
Qt在嵌入式领域中的应用也是非常广泛的,它可以构建面向各种设备的图形应用程序,在机顶盒、车载娱乐系统、安防监控设备等领域具有广泛的应用。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。