QT5开发——GUI程序原理分析

一、命令行应用程序

1、命令行应用程序的特点:

是一种基于顺序执行结构的可执行程序;

程序执行过程中不需要与用户产生交互;

程序执行结束后给出最终的运行结果。

比如:gcc a.c b.c //使用gcc交互编译链对C语言文件进行编译,链接成可执行文件。

编译执行命令行应用程序过程中不会产生用户交互,编译结束后会生成可执行文件。

2、命令行应用成熟的运行模式

在这里插入图片描述
程序的运行有固定的开始和固定的结束。程序的入口即为在命令行中敲击的命令,也就是在我们常说的

Shell,用户与操作系统内核之间进行交互的接口,当执行命令行应用程序后,系统自动去找到下一个

函数去执行,直到整个程序流程的结束。

3、命令行应用程序适用场合

单任务程序;

无交互或简单交互场合;

服务器应用场合。

二、什么是Shell

Shell 是一个应用程序,它负责接收用户输入的命令,然后根据命令做出相应的动作, Shell 负责将
应用层或者用户输入的命令传递给系统内核,由操作系统内核来完成相应的工作,然后将结果反馈给应
用层或者用户。

1、Shell 基本操作

前面我们说 Shell 就是“敲命令”,那么既然是命令,那肯定是有格式的, Shell 命令的格式如下:

command -options [argument]
command: Shell 命令名称。
options:选项,同一种命令可能有不同的选项,不同的选项其实现的功能不同。
argument: Shell 命令是可以带参数的,也可以不带参数运行。

同样以命令“ls”为例,下面“ls”命令的三种不同格式其结果也不同:

ls
ls – l
ls /usr 

ls就是一个命令行应用程序,当我们在终端的命令行中敲出命令行,并进行回车后,便可在终端看到命令行应用程序的输出结果。

在这里插入图片描述

三、图形界面GUI应用程序

1.图形界面应用程序的诞生

**随着应用程序的诞生发展,计算机走进日常生活。对于大多数人而言。

计算机只是个工具,并不会选择去面对着终端和命令行进行开发;
计算机程序开始需要处理各个领域中的问题;
计算机用户已经不再是专业的计算机工作者。

2、图形界面应用程序的特点(Graphic User Interface)

是一种基于消息驱动模型的可执行程序;
程序的执行依赖用户的交互过程;
程序执行过程中实时响应用户操作;
一般情况下程序执行后不会主动退出。

3、图形界面应用程序的运行模式

在这里插入图片描述
由流程图得出,图形界面应用程序执行时,从main函数入口开始,最后会进入消息循环,除非收到特

定的消息。(用户点击退出产生)

每一个主窗口、元素都需要用户去创建,当显示出主窗口后,然后进入循环,系统等待用户进行操作,

也就是人机交互,操作系统等待用户对其发消息,进入图形界面消息处理。

4、图形界面应用程序的消息处理模型

在这里插入图片描述当用户操作(如鼠标点击、键盘按下)时,操作系统内核会感知到用户操作,然后根据用户的操作类型生

成相应的系统消息,然后将系统消息发送给拥有焦点的(用户当前操作的)应用程序,接着应用程序收到

系统发送的消息并响应、处理(消息被扔到应用程序的消息队列,应用程序从消息队列中取出一个个消

息并由消息处理函数处理),当不存在用户操作时,GUI应用程序处于停滞状态。

5、图形界面应用程序适用场合

多任务的场合;
强用户交互的场合;
非专业计算机用户。

使用QT Creator做的串口助手
在这里插入图片描述

四、图形界面程序与命令行应用程序结合开发

当代大型软件产品架构模型

在这里插入图片描述当代软件产品包括:用户界面交互层(qt,mfc,.net)《=》网络更新模块(命令行程序)、数据库管理模块(命令行程序)、虚拟机引擎模块(命令行程序)。

图形界面程序VS命令行应用程序

命令行应用程序图形界面应用程序
基于顺序执行结构基于消息驱动模型
弱交互执行强交互执行
由用户触发运行由用户触发运行
主动结束由用户触发结束
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值