UI 用户界面
界面
界面指用户与应用进行交互的一组媒介元素和行为模式。
- 按渲染方式: 文本界面(TUI)、图形界面(GUI)、非视觉模式(如语音、体感等)
- 按交互方式: 命令行界面(CLI)、窗口(windows)界面、自然交互界面(NativeUI)
文本界面 TUI
文本用户界面,最小渲染单位为asiic字符,继承了纸质印刷系统的形式
- 最小图形单元即字符,字符的形状由不同的字体库决定
- 屏幕被划分为若干行列,譬如标准的终端窗口:80*40个字符
- 优点是简单易用:字符相当于预制好的组件,拿来即用
- 缺点则是精度不足:同样受限于字符与字体,不能随心所欲的在屏幕上绘制任何形状和布局
有爱好者使用文本字符进行各种图形的设计,称之ascii的艺术,https://www.asciiart.eu/
图形界面 GUI
图形界面,最小渲染单位为像素, 典型代表是windows、macos等窗口系统,允许应用程序以像素为单位在屏幕上绘制各种图形
- 优点:精度高,自由度高
- 缺点:没有标准字库可用,需要自行编制算法以绘制各种图形
- 窗口操作系统提供了一组标准的窗口控件,解决了基本界面元素的绘制问题
- 窗口操作系统提供了标准的文本输出模式(字库),解决了文档元素的绘制问题
界面类型:按交互方式
- 命令行界面:
- Windows:兴起于90年代,基于GUI,适用于桌面
- WEB界面:随互联网而兴起,基于文档
- 移动设备界面:随移动智能终端而兴起,特色是手势
- 自然界面: 随着AI而兴起,如自然语言对话、自动图形图像识别等
这里的用户指的是普通用户;专业用户还可以通过其它界面,如WEB API(应用程序接口)等方式与WEB应用进行信息交换
非视觉界面
- 语音:如语音对话模式
- 体感:如体感游戏、动作捕捉器
- 可穿戴: 更为丰富的传感设备,如触觉、温度等
命令行界面
古老的交互形式,基于文本,采用命令式操作模式,适用于服务器软件
- 样式
- 程序的执行由一行接一行的命令行组成
- 闪烁的光标代表着当前输入(或焦点)的位置
- 输出同样由多行文本组成
- 行为
- ctrl-c、ctrl-z、ctrl-p ctrl-n等快捷键
- 管道符、重定向等数据处理流
窗口界面
GUI诞生后的交互形式,基于标准化窗口,采用面向对象的操作模式,适用于可视化应用。
- 样式
- 程序由多个窗口组成
- 窗口具有统一外观(方方正正),由标题栏、菜单栏、状态栏等标准组件所组成
- 右上角是基本菜单(最大化、最小化、关闭)、左上角是应用自定义菜单
- 行为:
- 先选择,后操作
- 左键单击选择,左键双击执行,右键单击上下文菜单
- 打开或关闭一个程序,即对应于打开或关闭一个主窗口;切换主窗口即等同于在不同程序进程之间进行切换,切换到前台的窗口(焦点窗口)即当前进程,可接收用户输入
自然交互界面
Native User Interface,是信息技术走向成熟阶段的产物,
- 样式:更加符合人类自然行为的输入输出样式,如语音、手势、照片、XR等。典型的例子是移动设备的触摸和拍照等新输入模式,大大降低了电子设备的使用难度。
- 行为:更加符合人类的自然行为的交互模式或智能化,如语音交互、动作交互等;前者如chatgpt,后者如机器人等
多模态的输入输出与更自然的交互形式,是未来的发展趋势
Web界面
Web界面是上述多种界面的一种融合。Web应用诞生于TUI界面(终端下的浏览器),当前主要运行在GUI系统中,因此具有TUI、GUI和窗口界面等特性,如:
- 页面在窗口容器中运行,主要基于文本模式进行渲染
- 逐步支持嵌入图片、视频等像素级的图形资源
- 在HTML5中引入了画布(canvas)元素,允许通过脚本在画布元素中绘制像素级图形图像
但是Web应用界面的交互形式和普通窗口应用之间有一些不同:
- 超链接跳转;链接收藏;链接分享
- 上一步;下一步;刷新;
在未来,web界面同样将支持NUI,如Web3D、WebXR等