前言
全部课程
上初中那会儿,我的班主任王老师,在最初给大家分配座位,会严格的按照两条重要的标准来执行。第一条就是按照身高来排座,个子矮的同学坐前面,个子高的同学坐后面,这样就可以有效避免视线遮挡的问题。第二条执行标准就是按性别,同桌的两人,一男一女,男生坐左边,女生坐右边。
王老师尤其不喜欢男同学留长发,她认为那样“不够精神”。所以号召(强制要求)班级里所有的男同学,都去剪短发。剪完短发后,班级面貌“焕然一新”,每当上课的时候,其他老师走进教室,都感慨我们六班的“班容班貌”,记得当时语文老师还即兴读了两句诗:"横看成岭侧成峰,远近高低各不同....
王老师对同学们座次的排序,有两个重要的执行标准。在自然界中,存在的广泛事物,只要数量上超过2个时,都会涉及到排序问题,而要想保证排序能够顺利进行,都需要借助相应的规则。
WiFi列表
在互联网产品设计中,涉及排序的点也非常多。比方说,我现在正在用的这台笔记本电脑,他的屏幕右上角位置,有一个WiFi图标,当我点击这个图标时,会触发一个下拉列表。在这个列表内,会出现在我周围,可被侦测的所有WiFi信号源。说到这里,问题特别多的小强就会问了,我怎么只看到几条WiFi信号源啊?是不是你的电脑侦测能力差啊?”其实并不是我的电脑有问题,而是在Mac系统中,会将WiFi信号源,按照连接情况,进行分组。它会将历史上,我这台电脑,曾连接成功过的WiFi源,归类到首选网络中,而其他一些我从未连接过,但是可被系统侦测到的信号源,归类到其他网络分类里。这种分类方式,可以保证我能从大量WiFi源中,快速的筛选出可用网络。

分类后的WiFi源,在各自分类列表内向我们展示时,都需要按照一定排序规则来进行。下面,我们以我笔记本电脑中,其他网络分类下的数据为例,来总结一下,Mac系统中,WiFi信号源的排序规则。在其他网络分类下,所以的信号源都是按照如下图方式进行排序的:大的排序规则是按照先中文后英文来排序的。在中文部分和英文部分,则分别按照汉语拼音首字母,和英语单词首字母,由A到Z的顺序进行排列。

综合上述内容,我们最后再做一个阶段性的总结:由于电脑周边可能存在大量的信号源,为了防止无用信息对用户形成干扰,Mac系统对所有信号源进行了归类,将历史上链接成功的信号源划分到首选网络分组,这部分信号源,在WiFi列表的一级目录中直接显示,方便用户直接选择。而从未连接过的信号源,则被分组到其他网络下,折叠显示于二级目录内,以降低无用信息,对用户选用WiFi所形成干扰。所有分组下的信息,都会按照一定的规则来进行排序,如果用户想要选择目标信号源,可以基于这种排序,缩小查找范围。
其他排序案例
如果你留心观察,就能发现,在我们的软件产品设计中,有大量涉及排序规则制定的工作。当涉及排序的数据条数较多时,如何合理的制定排序规则,将直接影响用户的使用效率。
比如,在我们微信通信录的设计方案里。为了提高使用者查找联系人的效率,微信提供了人名搜索和字母选项定位器两种查找途径。如果我们想要准确定位联系人,可以通过搜索完成查找,如果我们不想输入,那么,我们可以借助字母现象定位器缩小联系人的查找范围。

如果我们长按iPhone手机桌面上的任何应用图标,都能触发如下图所示的一个列表菜单。菜单内会列出全部可被快速执行的选项命令。在这些选项间,同样会涉及到排序问题。在Safari浏览器的列表内,用户高频使用的新建标签页,会被优先安排在首选项位置。而像移除APP等破坏性的操作选项,则会被排列在列表的最后一项,并使用红色字体进行特别强调。

在一些对数据时效性,有特别要求的产品中,所有数据会按照时间线的先后顺序来进行排序。比如微信朋友圈,最新发布信息会排在所有旧信息之前。当然,微博早期的feed,也是按照时间线的先后顺序,来做信息展示的,后来官方加入了机器学习,微博的产品经理认为,机器会更懂用户,知道用户最想要看到什么(我信你个鬼)。从此,用户的个人feed不再严格按照时间先后的熟悉来定义,而是基于官方的算法推荐。
最后
本节的最后,我们再回到王老师分配座位这个故事中。期末考试临近,很多同学找王老师反馈,某些调皮的孩子,自习课不好好学习,经常搞小动作。王老师在课后,对原有的座位排序进行了调整,将那些调皮的孩子调到了最后排座位,以示惩戒。
王老师显然打破了原有的座位排序规则,但是这种改变是出于客观实际做出的决定。同样,在产品设计中,我们也需要结合用户的核心需求,以及场景任务的需要,灵活的制定排序规则。比如,很多B端产品的数据呈现,默认状态下,是按照数据产生的先后顺序来排序的。但是,有时候,这种单一的排序规则,很难覆盖用户的所有需求。所以我们在设计这些系统时,通常会依照用户的需求,多提供几类排序选择方式。
