Appearance
UI
元信息
- 目标:建立界面形态的分类框架——按渲染方式(TUI/GUI/NUI)与交互方式(命令行/窗口/可穿戴)理解界面演化,定位 Web 界面"窗口容器 + 文本模式渲染"的混血特性,展望 Gen UI 的生成方式变革
- 关键概念:TUI、GUI、NUI、命令行界面、窗口界面、可穿戴界面、Gen UI
- 关联阶段:cp4
- 常见误区:以为 GUI 只是 TUI 的简单升级(渲染单元从字符到像素,带来的是像素级绘制与标准控件两套体系);以为 Web 界面就是纯 GUI(页面在窗口容器中运行,但主要基于文本模式渲染,canvas 才补上像素级绘制);以为 NUI 全面优于 GUI(自然交互亲和但精确性低,"一个点击能解决的事不必啰嗦",混合交互常是更优解)
用户界面
用户界面指用户与应用之间进行交互的一组媒介元素和行为模式。分类有两条轴,各答一问:画面用什么画(渲染方式),人用什么操作(交互方式)。
- 按渲染方式:文本用户界面(TUI)、图形用户界面(GUI)、自然用户界面(NUI)
- 按交互方式:命令行界面(CLI)、窗口界面(window)、可穿戴界面(wearable)
两条轴大体结伴而行:命令行跑在 TUI 上(字符进、字符出),窗口跑在 GUI 上;NUI 则开始挣脱——交互靠说、靠比划,画面甚至不再有固定的"单元"。
文本用户界面 TUI
文本用户界面的最小渲染单位是文本字符(ASCII 或 Unicode),继承自传统的印刷系统:
- 最小图形单元是字符,字符的形状由字体库决定
- 屏幕被划分为固定的行列,如标准终端是 80 列 × 24 行
- 优点是简单易用:字符相当于预制好的组件,拿来即用
- 缺点是精度不足:受限于字符与字体,不能随心所欲地在屏幕上绘制任何形状与布局
有爱好者用文本字符拼出各种图形,称为 ASCII 艺术(ASCII art):asciiart.eu · Amiga ASCII 艺术;也有反向的尝试——在 PowerShell 文本终端里画像素。
命令行界面
古老的交互形式:键盘(字符级)输入 + 文本输出,命令式操作模式:
- 程序的执行由一行接一行的命令组成:命令 + 参数 + 文件 = 动词 + 名词
- 闪烁的光标指示当前输入(焦点)的位置
- Ctrl-C、Ctrl-Z、Ctrl-P、Ctrl-N 等快捷键
- 管道符、重定向等数据处理流
窗口界面
GUI 诞生后的交互形式:鼠标(像素级)输入 + 标准化窗口输出,面向对象的操作模式:
- 程序由多个窗口组成;窗口外观统一(方方正正),由标题栏、菜单栏、状态栏等标准组件构成;右上角是基本菜单(最大化、最小化、关闭),左上角是应用自定义菜单
- 打开或关闭一个程序,即打开或关闭一个主窗口;切换主窗口即在不同程序进程间切换——切到前台的焦点窗口即当前进程,可接收用户输入
- 先选择,后操作:文件 + 配置 + 操作 = 名词 + 动词
- 左键单击选择,左键双击执行,右键单击出上下文菜单
可穿戴界面
NUI 与 AI 时代的新型交互形式:可穿戴输入设备 + 多模态输出,采用更贴近人类自然行为的模式:
- 初级的例子是移动设备的触摸、拍照等新输入模式,大大降低了电子设备的使用难度;高级的例子是 AI 眼镜、AI 耳机
- 另一种观点是混合交互模式:NUI 的人类亲和性 + GUI 的高效性
一个点击就能解决的事情,为什么要啰嗦呢?汽车要不要保留实体按键、有了强大的 AI 还要不要人类的判断——这不仅是一个 UI 设计问题,也是人类社会如何运转的问题。
Web 界面的特点
Web 生来的开放与跨平台,使其在交互形式上超越普通窗口应用:
- 链接跳转;链接收藏;链接分享
- 上一步;下一步;刷新
Web 界面的本质是:打破桌面软件的孤岛,将信息世界完全联结起来,是人-机体验与机-机互通这两者之间的平衡。
界面发展的时间线
这里的用户指的是普通用户;专业用户还可以通过其它界面与 Web 应用交换信息,如 WEB API(应用程序接口)
Gen UI
前文都在讲界面长什么样,还有一问:界面怎么来?传统的答案是程序员驱动 + 静态开发——先写代码,设计时编译出一个固定界面。未来的演进趋势是语义驱动 + 运行时生成:
- 程序员驱动 → 用户驱动
- 编码实现 → 语义描述
- 设计时静态编译 → 运行时动态生成
- 一应用一界面 → 多应用一界面;多用户一界面 → 一用户一界面
- 模板 → 组件 → 语义
最后一条自问:这条路线,是不是与 HTML 标记的设计初衷、前端技术的发展路线一脉相承?