第1课 GUI程序原理分析
1. 命令行应用程序
(1)命令行应用程序的特点
①是一种基于顺序执行结构的可执行程序
②程序执行过程中不需要与用户产生交互
③程序执行后给出最终的运行结果
(2)命令行应用程序的运行模式——程序运行有固定的开始和结束

(3)命令行应用程序适用场合
①单任务场合
②无效互或简单交互场合
③服务器应用场合
2. 图形界面应用程序
(1)图形界面应用程序的诞生
①随着计算机技术的发展,计算机走进日常生活
②计算机程序开始需要处理各个领域中的问题
③计算机用户已经不再是专业的计算机工作者
(2)图形界面应用程序的特点
①是一种基于消息驱动模型的可执行程序
②程序的执行依赖于用户的交互过程
③程序执行过程中实时响应用户操作
④一般情况下程序执行后不会主动退出
(3)图形界面应用程序的运行模式

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

(5)图形界面应用程序适用场合
①多任务场合
②强用户交互场合
③非专业计算机用户
3. 图形界面程序 VS 命令行程序
当代大型软件产品架构模型

4. 小结
|
命令行应用程序 |
图形界面应用程序 |
|
基于顺序执行结构 |
基于消息驱动模型 |
|
弱交互执行 |
强交互执行 |
|
由用户触发运行 |
由用户触发运行 |
|
主动结束 |
由用户触发结束 |
第1课 GUI程序原理分析的更多相关文章
- 第2课 GUI程序实例分析
1. GUI程序开发概述 (1)现代操作系统提供原生SDK支持GUI程序开发 (2)GUI程序开发是现代操作系统上的主流技术 (3)不同操作系统上的GUI开发原理相同 (4)不同操作系统上的GUI S ...
- GUI程序原理分析
1,Qt 是一套跨平台的程序设计库,这套程序设计库主要用于 GUI 方面的程序设计开发,所以本系列博文主要是利用C++介绍 GUI 程序设计技术: 2,命令行应用程序: 1,命令行应用程序的特点(Co ...
- Android应用程序组件Content Provider在应用程序之间共享数据的原理分析
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6967204 在Android系统中,不同的应用 ...
- GUI程序分析实例
GUI程序开发概述 GUI程序开发原理 GetMessage(&msg)将消息队列中的消息取出来,在循环中进行处理. GUI程序开发的本质
- 第11课 Git GUI程序的基本功能
11-1 Git GUI程序的基本操作
- Handler系列之原理分析
上一节我们讲解了Handler的基本使用方法,也是平时大家用到的最多的使用方式.那么本节让我们来学习一下Handler的工作原理吧!!! 我们知道Android中我们只能在ui线程(主线程)更新ui信 ...
- 【构建Android缓存模块】(一)吐槽与原理分析
http://my.oschina.net/ryanhoo/blog/93285 摘要:在我翻译的Google官方系列教程中,Bitmap系列由浅入深地介绍了如何正确的解码Bitmap,异步线程操作以 ...
- 转载:AbstractQueuedSynchronizer的介绍和原理分析
简介 提供了一个基于FIFO队列,可以用于构建锁或者其他相关同步装置的基础框架.该同步器(以下简称同步器)利用了一个int来表示状态,期望它能够成为实现大部分同步需求的基础.使用的方法是继承,子类通过 ...
- NOR Flash擦写和原理分析
NOR Flash擦写和原理分析 1. NOR FLASH 的简单介绍 NOR FLASH 是很常见的一种存储芯片,数据掉电不会丢失.NOR FLASH支持Execute On Chip,即程序可以直 ...
随机推荐
- 使用webuploader实现文件的断点续传
webuploader是百度Fex团队开发的一款上传插件,对于现代浏览器采用了HTML5的方式进行上传,二为了兼容IE浏览器则采用了Flash的方式作为补充. 首先,这个插件在全局仅暴露一个WebUp ...
- install ros-indigo-map-server
sudo apt-get install ros-indigo-map-server
- render:h => h(App) 是什么意思?
在学习vue.js时,使用vue-cli创建了一个vue项目,main.js文件中有一行代码不知道什么意思.在网上搜索得到如下解答: 参考一:https://www.cnblogs.com/longy ...
- thinkphp3.2笔记(5)创建项目 创建模型 实例化
一 创建项目 1 拷贝框架 目录 public thinkphp .htaccess index.php [application不用拷贝,会自动生成] 2 public 下面创 ...
- Linux命令详解-help
help命令顾名思义就是显示帮助信息的,它是个Bash内建命令,也只是用来显示Bash内建命令的帮助信息的(Display helpful information about builtin co ...
- hihocoder1513
https://hihocoder.com/problemset/problem/1513 五维偏序问题,直接bitset压位,复杂度O(n^2/32) (本来想写三维偏序,但是cdq不会只好写写五维 ...
- HDU1598 并查集+贪心
find the most comfortable road Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ...
- 牛客网——E进阶吧阶乘
链接:https://www.nowcoder.net/acm/contest/75/E来源:牛客网 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 32768K,其他语言65536K ...
- POJ 3087 Shuffle'm Up 线性同余,暴力 难度:2
http://poj.org/problem?id=3087 设:s1={A1,A2,A3,...Ac} s2={Ac+1,Ac+2,Ac+3,....A2c} 则 合在一起成为 Ac+1,A1,Ac ...
- Linux jdk环境配置模板
export JAVA_HOME=/opt/JAVA/jdk1.8.0_191export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOM ...