快速软件,最好的软件:为什么速度是工程质量的代名词
快速软件,最好的软件:为什么速度是工程质量的代名词
速度是工程质量的代名词
软件速度是产品开发中最有价值却最不被重视的资产之一。当软件运行快速时——即用户意图与应用程序响应之间几乎没有延迟时——它会平滑地融入用户的生活,而不是成为障碍。速度通常可以作为通用工程质量的代名词;当一个应用程序在执行简单任务时变慢,这表明其缺乏对细节的关注,可能预示着更深层、未被察觉的架构腐烂。
速度与信任的关系
简单操作中的性能问题会侵蚀用户对工具可靠性的信任。例如,如果一个文本编辑器在渲染 5,000 字的文档时感到吃力,用户可能会开始质疑该应用程序同步功能的完整性,或者其防止数据丢失的能力。相反,像 Sublime Text 这样无论输入规模如何都能保持快速的软件——即使在处理 50,000 行的文件时也能保持性能——能建立起对其工程基础的长期信心。
“融合”与用户流
优秀的工具以其维持用户“流”(flow)的能力而定义——即深度沉浸于任务的状态。快速软件允许用户与工具集“融合”,减少操作界面的认知负荷。这被比作实体打字机的直接性,即每一次机械动作都随着用户移动的速度而发生。当软件引入延迟时,它会打破这种“流”,将创造性过程转变为与工具的斗争。
软件性能案例研究
高性能工具
- nvALT: 一个纯文本数据库,能够瞬间打开并提供即时的搜索结果,充当了一个高效的“离线大脑”。
- Figma: 尽管是基于浏览器的,但 Figma 以其极高的速度和直观性而闻名,作者将其归功于“贴近底层的工艺”。
- Things: 一款 iOS 应用,因其触感和有目的性的动画而受到称赞,使界面感觉快速且使用有趣。
- Keynote: 一款 macOS 应用,在功能强大与简洁、响应迅速的界面之间取得了平衡。
性能退化与“臃肿”
- Adobe Photoshop and Lightroom: 曾经快速且灵动,但随着时间的推移,这些工具已变成了“笨重的肿块”。作者指出,在 Photoshop 中打开一个新文件对话框可能需要几秒钟,这会导致用户转向更快的替代方案,如 Affinity Photo。
- Google Maps: 从一个专注的工具转变为一个充斥着缓慢动画和多种 UI 变体的复杂应用程序,这导致了可用性的感知下降,迫使一些用户回归使用响应更迅速的 Apple Maps。
- iTunes: 被引用为“软件笨重化的谷底”,它最终分解为独立的应用程序,是对其自身臃肿的一种必然回应。
速度不仅限于执行周期
速度不仅限于 CPU 周期;它还体现在“每个用户周期的工作量”中。这包括工具设计的合理性以及语言的清晰度。
- 界面合理性: 一个逻辑运行的工具(例如 Figma 的 pen tool)可以减少用户实现目标所需的时间。
- 语言速度: UI 对话框中模棱两可或违反直觉的语言(例如在 macOS 未保存文件的对话框中将“Don't Save”改为“Delete”)会导致用户重新审视自己的操作,从而有效地减慢了他们的速度。
- 触感响应性: 在触摸界面中,速度被体验为触感。iPadOS 的 “Slide Over” 功能被强调为优于分屏,因为它能与用户的指尖同步移动,而不会产生重绘屏幕时感知的延迟。
结论:轻盈的目标
最终,软件的目标应该是随着时间的推移变得更加优雅并实现“去臃肿化”。快速即是轻盈,而轻盈即是减轻用户的负担。当软件在设计时致力于工艺与速度时,它能实现创作的流畅性,而不是与界面的斗争。