Skip to main content
返回博客
博客

面向软件开发的空间思维

为什么把工作摆在画布上不只是更好看,而是认知上更优。为开发者工具中的空间界面提供理由。

过去 40 年里,几乎所有开发者工具都用了同样的布局:左边文件树,中间编辑器,底部终端。顶部是标签页。也许再加一个搜索或 git 侧边栏。

这个布局能用,但它有个隐性代价:所有东西都层层叠在一起。你一次只能看到一个文件、一个终端、一个输出。你的空间感知被压缩成了一连串切换标签和键盘快捷键的动作。

如果我们换成设计工具在十年前就已经证明过的方式 - 给开发者一个画布呢?

标签页税

你一天要切换多少次标签页?针对软件开发者的研究显示,平均每天会发生 300 到 400 次上下文切换。每次切换都不是免费的 - 即使只是短暂切换,也需要 15 到 25 秒重新进入状态。

这意味着每天有 75 到 150 分钟花在重新找回上下文上。不是编码,不是思考,而只是在回忆自己刚才在做什么。

标签页会制造这个问题,因为它们是空间上的别名。三个终端放在三个标签页里,占据的是同一个屏幕位置。你的大脑必须维护一个内部地图,记住每个标签页后面是什么。这会把工作记忆消耗在导航上,而不是解决问题上。

空间布局如何降低认知负担

在画布上,这三个终端处于不同的位置。终端 A 在左边,终端 B 在右边,计划 note 在上面。你不需要记住标签页后面是什么 - 你直接看得见。

这在研究里叫做 外部认知。把空间信息卸载到环境中(也就是屏幕上),你就能把工作记忆留给真正的问题。就像你不会把一桌纸堆起来,而是把它们摊开一样。

有三个具体好处:

1. 周边感知

当终端 A 在屏幕左边开始输出时,即使你正专注于右边的终端 B,你也会通过周边视觉注意到它。换成标签页的话,除非你切过去,否则你根本不知道终端 A 已经完成了。

这种周边感知对多 Agent 工作至关重要。你需要知道 Agent 何时完成、何时卡住、何时需要注意,而不必一个个主动轮询。

2. 空间记忆

人对“东西在哪里”有着惊人的记忆能力。你会记得认证代码在左边那个文件里,测试在右边,API 文档在上方。这种空间编码快速而轻松 - 跟你在现实空间里导航用的是同一套记忆系统。

相比之下,标签页依赖的是语言记忆:"从左数第三个标签页是...测试运行器那个?还是第四个?" 这就慢得多,也更容易出错。

3. 关系可见性

在画布上,你能看到事物之间的连接。终端 A 到终端 B 的路由线,让数据流变得可见。被 frame 包起来的图块,说明它们属于同一个项目。距离本身就暗示着关系。

在标签页界面里,关系是不可见的。你的重构终端和测试运行器终端之间的联系,只存在于你的脑子里。

设计工具的先例

Figma、Miro 和其他基于画布的工具,十多年前就为设计师证明了这件事。在 Figma 之前,设计师使用的是单画布应用 - 一次一个画板,图层悄悄堆叠。Figma 给了他们一个无限画布,让所有屏幕、组件和状态都能在空间里共存。

结果不只是界面更好看。它改变了设计师的思考方式。他们开始把注意力放在系统而不是屏幕上。按流程、按状态、按用户旅程来组织。空间布局 本身 变成了设计思维。

开发领域也在经历同样的变化。当你把 Agent 摆在画布上 - 把重构 Agent 放在它正在修改的代码旁边,把审查 Agent 放在下面,把测试运行器放在角落里 - 你做的不只是整理窗口,而是在把开发工作流外化成一个可见、可操作的结构。

什么时候空间布局帮不上忙

空间界面并不总是更好。它们在这些场景里更差:

  • 深度单文件编辑 - 当你需要把一个文件铺满屏幕时,传统编辑器更强。
  • 简单顺序任务 - 如果你只是在跑一个命令、等它结束、再跑下一个,标签页就够了。
  • 屏幕非常小 - 空间布局需要足够的呼吸空间。在 13 英寸笔记本上,画布优势会打折。

真正的甜区,是你同时处理多个彼此相关的东西的时候 - 这正是多 Agent 开发最需要的。

从工作区到工作流

空间排布最强大的地方在于,你的工作区 就是 你的工作流文档。只看一张画布截图,别人就能知道你在做什么、各部分怎么关联、当前处于什么状态。

对比一下六个终端标签页的截图。你不切换进去,根本看不出它们在干什么。

这对可恢复性也很重要。当你合上电脑,第二天再打开时,一个保留的画布布局会立刻提醒你上次停在哪儿。空间排布会触发你的空间记忆,让你在几秒内而不是几分钟内回到上下文。

开发者工具的未来,不是更好的标签页,而是彻底不要标签页。