简论优秀的计算机桌面环境

| No Comments | 1 TrackBack

昨天看Google Reader的时候,看到了LinuxToy发的一篇文章:《GNOME Shell 模型设计图》,里面贴了Topaz Brainstorm在Gnome-look.org上发表的两张Gnome Shell的设计图。根据原作者使用的GFDL协议,我把那两张设计图传在这里(点击可放大):

gnome-shell-v1.jpg

gnome-shell-v2.jpg

当时我把这两张图下载下来看,越看越觉得不满意,于是总结了一下我对好的桌面环境的认知。

大约一年前我写过《由WriteRoom想到的理想桌面环境》,其中介绍过我对好的桌面环境的想法。那篇文章的主题,现在总结起来大概是“人用软件,而非桌面环境”,这个观点我到现在还认同。不过这篇文章偏重于我脑中的设计。但毋庸置疑的是,从那之前还要早时候,我就已经对GNOME和KDE这类桌面环境感到厌倦,并希望自己设计桌面环境了。

首先,有一个前导观点我需要澄清。第一个就是桌面的“易学性”和“易用性”的关系。看上去两者之间是一致的,但往往它们是对立的。举例来说,Windows的桌面环境可以勉强算作易学,但总体上来说,很难是易用。另一个更好的例子是UNIX下的桌面环境,有些可以算作非常不易学,但一旦学会后可以算是非常易用。而我的想法是更偏重于易用,因为对于桌面环境,你可能要学一次,但在将来却要每天都用。

还有一个对立的观感属于设计上的风格,就是“紧实”和“分散”。紧实的桌面环境当仁不让是Mac OS X。所谓紧实,就是系统里的很多软件之间的联系很紧密,因为都是Apple制作的,它们之间的交互就显得特别常见且方便。例如,在Mail.app中添加一个To Do项目,它同时也会出现在iCal.app中。紧实的桌面环境的有点是方便,缺点是增加了系统的耦合度。如果我们用Thunderbird代替Mail.app,就无法做到类似的效果。还有就是深受大家诟病的Safari、Quicktime等软件的升级重启问题。因为Safari升级后Mac更换了整个底层的Webkit架构,所以需要重启计算机。

分散的环境,Linux下的桌面环境是非常明显的例子。程序之间的关联很少,只要系统的MIME设置好了,在每一个环节上,用哪个程序都不影响使用。每个程序只做自己份内的事情,不管其它程序怎么样。这点传承自UNIX的KISS传统──每个程序只做一件事并且做到最好。因此在GNOME下,我们既可以用Evolution来收邮件,也可以用Thunderbird来收邮件,甚至用mutt来收邮件也没关系。分散的环境的系统耦合度很低,这是它的优点,缺点就是在日常应用中可能不如紧实的系统更方便。

对于桌面环境来说,每个人追求的目标或许不同。而我所追求的目标,就在于工作空间最大化。我认同Linus对于操作系统的解释:“操作系统的作用就是帮助应用程序来操作计算机,用户应该永远看不到操作系统本身”。这一点同样可以应用与我对桌面环境的想法上。

具体说来,我看了那两张Gnome Shell的设计图后的想法,总结如下:

  1. 整个桌面最上面的那一条,如果不是用来显式应用程序的菜单的话,能不要就不要。换句话说,我对那一条能接受的最大限度,就是Mac OS X的那种形式。像GNOME那样的,屏幕最上面的菜单栏要占据不少空间,而且基本上作用很小。GNOME的最上面的那一条,除了在右边放置一些应用程序的托盘以及系统时间、网络链接等信息,和几个快速启动的按钮外,主要的公用就是显式“应用程序”、“位置”和“设定”这三个菜单。这三个菜单的用处都相当小。“设定”可以像Mac的系统设定甚至像Windows的控制面板一样集中到一个窗口中完成,位置直接进Nautilus或其它程序中去找,启动程序可以用命令行或其它工具(如GNOME Do)更好的完成,托盘和时间可以独立出来放在可收缩的抽屉里,因此这个菜单完全没有必要。

  2. 桌面最下面的那一条,能不要的也最好不要。GNOME的这一条是任务栏,这点再议。KDE里这一点除了任务栏外,还有一个“开始”按钮。Mac OS X下面是Dock。我的系统的Dock已经设置成最小的状态了([1]|[2])。因为我不习惯把Dock自动隐藏,毕竟有些信息还是更喜欢一眼看上去就能一目了然的感觉。过去在用KDE的时候,那个粗粗的条实在是让人觉得占据空间,任务栏竟然能显式两行,相当诡异。实际上,我不觉得没有了任务栏就没法工作了。我在用Mac之前,在Linux下用FVWM配置的桌面环境里,没有任何条条,要切换应用程序有两种方法:一是用Alt+Tab和Alt+Shift+Tab,而是在桌面空白处用鼠标滚轮,没有感觉任何不便。

  3. 应用程序的启动。这一点在第一条中已经提到过一些。现在的桌面环境默认的启动方式都是很笨拙的。GNOME下是从应用程序菜单里找;KDE有个“开始菜单”,点进去可以搜索;Mac是应用程序文件夹配合Dock,或者通过Spotlight。好在现在已经有很好的方案来解决这个问题:我在过去用的是gmrun,因为Linux的应用程序和PATH设定已经够好的了;在Mac下用的是QuickSilver,口碑已经很好了;Google Desktop也能跨平台的使用,做的也不错。

  4. 一切的目的,是在方便使用的情况下,最大化工作空间。

当然上面的这几点有局限性。因为我目前用的是13.3''的MacBook,因此对工作空间的要求比较明显。如果用的是24''的显示器,Dock大小之类的就不用考虑了。当然GNOME的那类顶端菜单条是排除在外的。

昨天下午看到Apple4.us的一篇翻译文章《研究一下我们对 Chrome OS 仅有的一点了解》。里面有这么一段我非常赞同:

在这一点上,我的理论很简单。早期 Gnome 和 KDE 很大程度上只是克隆了微软的 Windows 的用户界面。此后它们开始出现分歧,我想说的是,Ubuntu 默认的 Gnome 桌面从设计和易用性角度,很多方面都超过了微软的 Windows Vista 。但本质上它仍然是 Windows 的克隆——窗口内的菜单栏、窗口最大化/最小化/关闭按钮在右上角、菜单和按钮名称使用丑陋的单字符下划线。一眼看上去,它就像 Windows 安装了另一个主题而已。他们的想法是:如果你想要 Windows 用户去用 Gnome 或 KDE ,你就必须让它看上去像 Windows。

这也是我觉得传统桌面环境不好的原因之一,也是为什么我到现在还是很怀念在Linux上用FVWM的时候的原因。

1 TrackBack

TrackBack URL: http://www.cnliufeng.com/cgi-bin/mt/mt-tb.cgi/281

Mac系统的界面问题 from Blog @ CNLiuFeng.com on July 19, 2009 4:04 PM

我有一张纸,在平日里想到了可以写在这里的话题,就把它记在纸上,顺便列上提纲,等有时间的时候就整理成文章发上来。一张纸上可以写好几个题目。这一个星期写完,还剩下两个。今天在学校复习软件工程,弄的有点心烦意乱,没心情写大文章,就拿其中的一个小题目凑数吧。 我在去年四月买了现在用的这台MacBook后,虽然觉得Mac系统的GUI界面也还不错,但总是不习惯。在用Mac之前,我的本子上装的Linux,用的是FVWM。自己的配置虽然不复杂,但基本上也能做到随心所欲,用起来十分方便。Mac的图形界面虽然好,也比较... Read More

Leave a comment

About this Entry

This page contains a single entry by Feng Liu published on July 15, 2009 9:00 AM.

Unix-Center.Net与UNIX在中国的推广 was the previous entry in this blog.

震撼与内涵 is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.