在上一篇《更高效地操作桌面和窗口》中,学习了如何在有限桌面之中,尽量高效地使用多窗口、触控板和聚焦等功能,来提高操作效率。结合第一篇内容,我们基本掌握了 Mac 桌面的使用技巧。
然而除了桌面的使用,如何快速上手一个不熟悉的应用,也是 Mac 新手需要掌握的技巧。
「Mac 新手想知道」系列的第三篇,我们就来探究常见的 Mac 应用布局,并借此来了解 macOS 的文件系统。
这一篇我们先不关注具体的使用技巧,而是专注于 macOS 中不同于 Windows 的一些概念,相信当你理解了这些概念,会对 macOS 理解更上一层楼。
界面布局对于 Mac 新手来说,一下子想要上手各式各样的 Mac 应用,难免不知所措。其实应用的功能、设计虽各不相同,但实际上应用的界面布局都是相似的。只要我们找出其中的规律,便可以举一反三,快速上手其他应用。
需要说明的是,相比 iOS 平台有着严格的设计规范和审核机制,Mac 应用的开发框架五花八门,一定程度上加大了我们学习的难度。所以本文所介绍的常见界面布局,聚焦在基于苹果原生开发框架的应用上。
三栏式布局提到 Mac 应用的布局,一定要了解一个名词:三栏式布局。
我们用 macOS 自带的备忘录应用举例。所谓的「三栏」指的是:
最左侧的边栏; 中间的列表; 右侧的编辑窗口。边栏用于展示不同存储位置的文件夹,列表展示文件夹内的备忘录文件,编辑界面则是应用的核心功能。除了三栏,Mac 应用通常还在界面顶部有工具栏,用于放置各种常用功能。
备忘录采用经典的三栏式布局
三栏式的布局是 Mac 应用最基础的界面布局范式,其他应用都是在此基础上进行精简或者优化。例如访达的界面中去掉了中间的列表,只有边栏和文件界面;语音备忘录界面则是去掉了边栏,只有文件列表和录音界面。
语音备忘录的界面
相比 Windows 应用常见的「菜单 + 编辑界面」的大一统布局方式,可能你会疑惑,Mac 应用为什么要分成三栏,而且还额外需要菜单和工具栏?这样设计的目的是什么呢?
应用的本质就是处理文件的工具。在计算机诞生之初,应用是没有图形界面的,都是直接调用应用地址,以打开文件进行处理。进入图形界面时代之后,苹果希望用户改变「在文件管理器找到文件后双击打开」的使用习惯,改为「打开应用后再选择文件」的使用逻辑,认为这样更加节省心智成本(这一点在 iOS 上曾经被推行到极致,iOS 压根不提供文件管理器,逼迫开发者和用户适应)。
邮件应用的界面
这种设计理念的优劣暂且按下不表,但是根据这种理念,应用内就必须有相应的界面,来承担选择文件的作用,这便是边栏的作用。并且由于文件通常是多层级的,仅一栏很难合理地呈现,所以不少应用还要设计专门的一栏,来展示文件列表。例如在邮件应用中,边栏展示的是邮箱的不同文件夹,中间一栏是邮件列表。
打开 Keynote 时会显示文件选择窗口
但如果我们进一步观察,会发现并非所有的应用都有边栏,例如苹果出品的 Keynote 讲演,就和 Windows 上的 Word 一样,都是打开应用后会弹出文件选择窗口,在应用界面内反倒没有文件选择的界面。这里就涉及到文件的归属和存放位置问题,我们在这里不做展开。 目前我们只需要明白,边栏和列表是用来选择文件的。
工具栏与检查器除了三栏式布局,另一个 Mac 特色的应用界面元素就是工具栏。工具栏的作用也体现着 macOS 和 Windows 应用设计哲学的区别。
随着硬件的发展,应用的功能也逐步丰富,随之而来的问题是:如何让用户快速的找到某项功能呢?工具栏便应运而生。将用户常用的功能在工具栏上,并且提供极高的自定义权限,这样用户就不用去菜单栏搜索。
访达的工具栏 | 图片来源:苹果
其实类似的思路也在 Windows 应用中运用,Word 中的「开始」栏就是经典案例。原本不同的功能根据它的属性和使用场景,被分在「格式」、「设计」和「引用」等页面中,但是为了用户能快速找到常用的功能,就将它们聚合在「开始」页中。
当然,由于 Mac 应用将菜单完全放在系统层级的菜单栏中,工具栏就可以独占应用界面的顶部区域,而不用和「开始」也一样,和其他菜单挤在一起。
最后,Mac 应用中还会常见到「检查器」。为了直观地了解检查器的作用,各位可以打开 Keynote 讲演,检查器就在界面的右侧。
Keynote 右侧
应用的核心功能还是处理文件,检查器的作用就是显示文件的属性,并且能便捷地修改文件属性。以 Keynote 为例,检查器就分别为「格式」、「动画效果」和「文稿」。当用户选择幻灯片内的元素,检查器还会根据元素不同,展示更具体的属性。例如点击图片,「格式」下就会显示「样式」、「图像」和「排列」等属性,来调整图片的展示效果,阴影效果和位置等属性;选中文字,则展示文字的字体字号等调整选择。
简单来说,检查器可以让我们直接地修改文件的内在属性。在生产力工具中,检查器的作用尤为重要,因为大多数生产力工具(例如 Adobe 系列软件)的目的,就是便捷地对某类文件进行编辑。而在一些展示类的应用中,检查器可能只是用来显示文件属性(例如访达),甚至直接干脆取消掉。
文件系统在上文讲解界面布局时,已经提到 macOS 的文件系统对应用设计的影响。其实文件系统看似简单,认为不就是文件夹套文件夹吗?但其实经过云服务时代的洗礼,以及 iOS 的激进改革,有不少新手可能对 macOS 的文件管理系统没有整体性的认识。
而要理解 macOS 的文件管理系统,就要从 macOS 的前辈——Unix 系统的文件系统聊起。
文件树在 Unix 系统中,所有的文件组成了一个树状结构,任何文件/文件夹都有父级文件夹,除了系统的根目录。这个设计也被带到了 macOS 中。
Unix 的文件系统 |来源:uc.edu
打开访达应用的偏好设置 > 边栏(快捷键 ⌘Command – ,),确认「位置」中的「用户名 + Macbook Pro」这一选项有勾选上,然后点击访达边栏上的图标,再点击「osx」的硬盘图标,就进入了 macOS 文件系统的根目录。使用快捷键 ⌘Command – ⇧Shift -.,就能看到文件夹中的隐藏文件。仔细看会发现,其中不少文件夹的命名,还沿袭了 Unix 根目录中文件夹的命名。
查看文件系统根目录
当理解了 macOS 的文件,都与系统的文件树(File Tree)相关联时,就能看破不少软件界面上的障眼法(在 macOS Catalina 之后,出于安全考虑,重要系统文件都被转移到单独的文件树中,与一般文件隔离开来。这一机制有些复杂,这里不做展开,如果有兴趣可以阅读 这篇文章)。
在访达的侧边栏上,最上方是一列个人收藏,其实都是这些文件夹快捷方式,免去用户要从文件根目录找起的麻烦。例如「应用程序文件夹」,就是根目录下的文件夹(使用快捷键 ⌥Option – ⌘Command – P 可以在访达底部显示选中文件的路径)。
不仅是这些本地文件,甚至 iCloud 云盘中的文件,都同样位于系统的文件树之中。打开「终端」应用,拖动 iCloud 云盘中的文件到终端界面中,就会显示出文件的真实路径。可以看到,iCloud 云盘文件其实位于/Users/用户名/Library/Mobile documents文件夹之下。
资源库在上文讨论 Windows 与 macOS 打开文件的逻辑之分时,曾留下一个疑问:为什么有的应用是直接打开应用,在边栏选择文件;而有的应用则是在文件管理器中选择文件,这两个设计模式的区别在哪?又为什么会产生这样的区别呢?
想解答这个问题,就必须理解「资源库」这个概念。
之前说过,应用的本质是处理文件的工具,而文件又都占据着系统文件树中的一个位置,这自然就产生一个问题,应用应该如何管理自己要处理的文件。一种方案是「不管理」,就是放任文件在文件树中的不同位置,通过文件夹来整理文件。例如摄影师需要管理他的照片,就根据拍摄日期不同,把照片文件分门别类地放置进去。
这个方案的好处是心智成本低,适用于所有不同类型的文件。但坏处是找起文件来太麻烦了,如果是按拍摄日期分类,那如何快速找出同一个地点的照片呢?总不能人工把每个文件夹看一遍吧?因此一种补充手段是给文件加标签,给照片打上地点标签,就能快速找到。但标签一多,标签本身管理起来就非常有挑战性。另外针对不同类型的文件,文件管理器只能以图标或文件名的形式展示,可以呈现的信息非常单一。
照片应用 | 图片来源:苹果
因此,资源库作为另一种文件管理的方案被设计出来,它将应用所用到的文件,组合成一个资源库。以「照片」应用为例,它是典型使用了资源库的应用。所有照片被导入到「照片」应用之后,就不再以单个文件的形式存在,而是成为资源库的一部分。导入之后,照片文件就可以删除以节省空间,「照片」应用的照片不会受到影响。「照片」内的所有照片,存放在「照片图库」这个文件中(文件路径是 /Users/用户名/Pictures/Photos Library.photoslibrary)。类似的,「音乐」应用内所有的音乐文件,都存放在「Music Library」资源库中。
资源库的好处是能配合应用的功能,便捷地管理文件。例如「照片」应用有根据地点、拍摄时间甚至拍摄对象来自动分类图片。不同应用可以为自己的资源库,设计专门的展示效果,例如「音乐」应用,就能显示歌曲的歌词。
但这一方案的缺点同样明显,就是文件管理的灵活性非常差。如果用文件夹来管理文件,想要分享给朋友,直接传输文件即可。而到了资源库这里,首先要看应用支不支持导出某个文件,如果不行只能通过应用内的分享功能。其次一个应用的资源库,通常只能管理特定类型的文件,例如「照片」应用不能导入音乐文件,反之亦然。
所以即使 macOS 和 iOS 推动资源库这一概念多年,文件夹为核心的管理方案还是顽强地存活了下来,甚至在 iOS 上,苹果不得不逐步融入文件夹的概念,先是推出了「文件」应用,后来又为第三方应用提供「File Provider」等功能,算是对用户习惯的妥协。