纯文本之美

我经常开玩笑说图形界面太臃肿

当然,GUI 也有各种各样有用的应用程序,并且纯文本并不总是适用于所有信息。然而,对我们软件工程师来说,图形界面远非最佳

图形界面把你限制在作者想要的操作范围内。这会限制了你的创造力以及思维方式。

为了缓解这个问题,GUI 又会包含许多用户不需要的功能

臃肿软件(Bloatware)包含了一些不必要的功能,而这些功能会占用大量的内存。当软件被这些无用功能淹没而显得笨重的时候,这个软件就变成了臃肿软件。 – Techopedia

与之相反,终端鼓励大家写的程序做一件事并做好,所有的程序协同工作

小程序组合起来可以执行比单个大程序更广泛的任务。

文本流是实现此目的的通用接口。文本流简单而优雅。即使你找不到你想要的程序,你也可以轻松编写一个。

因此,通过组合程序,你几乎可以做任何你想做的事情。

现在你可能会争辩说,在大多数情况下,知道如何使用这些程序比知道如何使用图形界面更困难。我完全同意这一点。

GUI往往倾向于让你在短时间更简单得内执行操作,因为您可以简单地浏览菜单并找出你想要的按钮。

而终端则不怎么需要探索。您必须阅读手册并找出哪些是您需要用来实现某些事情的功能。

但是,由于我们常用的工具很少,因此学习这些文本命令是值得的。随着时间的推移,这些命令变得比在图形界面上点击更容易记忆这就是为什么图形界面的效率与您使用它们的频率成反比

由于各种原因,图形界面的开发成本更高

  1. 他们需要比基于文本的界面更多的思考。文本命令比其他视觉元素更精确,因此模糊性更小。
  2. 他们需要更多时间进行测试,并且这更难自动化。即使可以编写自动化测试,往往不太可靠:我们仍需要人眼来发现问题。好吧,机器学习和计算机视觉可以帮助我们,但让我们现实一点:我们还没有走到那一步。即使到了,那也会更昂贵。
  3. 如果您想设计一个优秀的应用程序,您需要学习可用性,图形设计,交互设计或付钱给别人做。

图形界面过时得很快。由于维护基于 GUI 程序的成本较高,通常更新要花费更多时间和工作。

随着图形设计的发展,它最终不仅会“看起来很糟糕”,而且如果不经常更新,甚至可能会出现错误的视觉效果。试着找一个比 grep,sed 或 awk 时间更长 GUI 程序,这些纯文本程序这么多年只有很小的改动。很不幸:无论 GUI 程序有多小,你都找不到。

我不是说图形界面没用,决非如此。我的意思是它们往往不适合工程师的工作。

纯文本是永恒的,精确和优雅的,我们应该更多地使用它


本文翻译自 Lucas F. Costa 发表于其博客的文章,原文地址在 In Praise of Plain Text

hah
Copyleft - All rights reversed. The internet is free and so is my content.