我认为 Code Bubbles 为整个 GUI 桌面隐喻开辟了思路,而不仅仅是编程。
我们所做的大部分工作都是分层的。想象一下编写项目文档。它有标题吗?副标题?想象一下构建目录 (ToC),然后单击每个标题/副标题以获取放置内容的单独窗口。您可以在不同的气泡中同时打开多个子部分。你总是可以分屏一个现代文字处理器来完成同样的事情,但我希望能够将这些部分移到单独的窗口中,这样我就可以按照我想要的方式排列它们,而不是仅仅依靠应用程序来为我“平铺”子窗口。Code-Bubbles-as-desktop 将允许这样做。
想象一下,您正在协作处理该文档。您单击 ToC 中的一个子标题并开始处理它。其他人点击另一个并开始处理它。您可以使用传统锁定来避免让其他人弄乱您正在做的事情,反之亦然。是的,我知道 EtherPad。我用过。它让我发疯。
我一直在考虑做一个基于 wiki 的文档/程序组合系统,您可以在主文档中创建标题,每个标题都链接到这些标题的实际内容。不同的部分会出现在不同的窗口中,您可以根据需要进行安排。Code-Bubbles-as-desktop 可以说是一种更优雅的解决方案。
显然,这可以通过编程来完成,因为程序只不过是一个复杂、非常精确的文档,目标受众非常挑剔。程序通常是非常分层的。就目前而言,当我编程时,我使用的是 Vim 或 Eclipse。他们都能够“折叠”我没有看到的代码部分,给我一个高级概述和实际代码的混合。在 Code Bubbles 中也可以做到这一点,其中一个气泡显示您的方法定义,而其他气泡包含方法内容。在将它们提供给编译器之前,它们都会被“编织”在一起。
另外,当我在编程时,我通常会通过在注释中放入高级伪代码来“充实”一个方法或函数,然后遍历并填写实现每段伪代码的程序代码。这些伪代码注释可以提供 ToC 部分,这将打开气泡来保存实际代码。系统需要将各个部分“编织”到主文档中。无论您使用哪种编程语言,这都会起作用。
我对文学编程的兴趣是否足够清晰?
让我们把它带到一个新的水平。您正在使用平板电脑或上网本。您可以使用的屏幕空间要少得多。哦,天哪,看那个;气泡都比较小。使用顶部的“上下文栏”找到您正在寻找的气泡,并且气泡可以占据屏幕。现在,您有了一种编写文档(包括程序)的方法,该方法适用于更小、尺寸受限的设备。
这可能是一厢情愿,但我认为这可能是一个重要的新范式,不仅适用于编程,而且适用于整个 GUI。我当然会使用它。