使用了一段时间的Mac,一直好奇为什么Mac的系统和程序共用菜单栏。
刚开始想到理由
1:因为顶栏一直都在,共用菜单栏可以利用空间,使程序窗口的内容显示最大化;
2:这种操作模式像很早以前的图形界面,那时候系统和程序都是全屏幕运行,顶栏都为菜单栏,而Mac延续了这种传统。
后来在读《人本界面》时想到了一个更加专业的理由来解释这种设计(《人本界面》作者Jef Raskin是Macintosh早期的设计者)。
“这样的设计是让用户不去区分系统和程序操作的差别,系统和程序尽量处在同一种模式中。所以使系统和程序共用菜单栏,并且尽量保持系统和程序菜单项的一致性。或者说把桌面当成内容编辑的区域,用户切换程序重要的是切换内容,固定的菜单栏让人也更专注内容而不是操作。”
Jef Raskin这么说的时候还只是图形界面发展的初期,那时候显示的空间有限,刚从字符界面发展到初级的图形界面,系统和程序的操作也都比较简单,所要使用的命令和操作方式相近。但是后来程序和系统越来越复杂,各种程序的使用模式和功能也越来越多样,为什么还保持这样的界面设计?
共用菜单栏出现的问题:
1:内容与操作的分离,当程序不是缩放到满屏运行时,内容与菜单的距离比Windows中菜单跟随窗口要大,根据费茨定律,操作的效率也低,并且中间还隔着可能是花花绿绿的桌面背景,也导致从内容到菜单的分心和干扰。解决这个问题的办法就是所有程序都缩放到满屏运行,这样达到菜单和内容距离最近,且没有干扰。但是Mac使程序满屏都没有一个固定的操作,提供的缩放操作对有些程序是满屏,而有些却不是(Finder)或者也不能(系统偏好设置)。
2:程序切换与菜单切换可见性矛盾,当程序最小化而没有关闭时,菜单依然为该程序的菜单,而不是马上回到系统菜单或最上层程序的菜单。假如该程序之前有程序也打开在桌面上,会让人误解菜单应该为桌面上可见程序的菜单,而对菜单进行操作并不是针对你眼前看到的程序窗口,而是已经最小化了那个程序。用户需要点击当前看到的程序窗口,才能把菜单激活为对应的程序菜单。菜单变化不是随着程序窗口可见性变化而变化,造成视觉和操作上的误解。
3:而对于从状态栏打开的程序窗口,即使是处于激活状态,也不会使菜单栏变化。因为这类窗口没有菜单栏,打开窗口并不会激活新的菜单。
4:菜单可用性问题,如果还没有登录进入程序,打开程序就会出现菜单,如果菜单都不能操作的话,出现有什么意义呢?让人看到满条的50度灰!
总结:
1:Mac顶栏的设计继承了80年代界面的设计,随着系统和程序的发展,继续采用这样的设计在实际中的利弊可能需要重新进行权衡。
2:这样设计最大一个优点是可能让人专注于内容的而不是操作,但是用户要在操作和内容之间切换的时候,明显影响了操作效率和连贯性。并且引发了程序和系统之间各种状态切换和可见性的问题。