5、老土眼中的一致性原则
同一用语、功能、操作保持一致。
“一致性”原则似乎是尼尔森十大原则中最容易理解,也是最容易操作的原则。先说“容易理解”,在设计一个应用的时候,让同一个应用中的各种用语、各种样式,以及各种类似的操作都保持一致,不但可以降低用户掌握此应用的复杂度和工作量,也可以通过“重用”降低应用开发的工作量。从这两个角度看,“一致性”原则是非常必要,而有效的。·再说“容易操作”。以Web开发为例,目前各种JS框架和CSS框架不断涌现,通过在应用开发项目中引入某个“较为成熟”的框架可以直接实现一系列最为常用最为重要的样式的“一致性”。
加上目前这些框架的易用性都做的非常好,所以似乎实现“一致性”也不是很难。
然而“一致性”的实施并不像看起来那么容易!
1、首先定义了一套组件的样式规范并不等于定义一致的“外观”样式
因为一个应用的外观往往并不是一系列组件的简单堆砌,所以即使已经对界面中的全部组件做了细致的规范,当运用这些组件构件应用界面的时候往往会有未被定义的部分。
如上图中,页面包括一系列组件,如:水平菜单、成组按钮、单行输入框、多行输入框、常规按钮、静态文字等,但是这些组件在页面中的排列方式往往并没有被预定义。这就需要开发者在应用开发中自行确定,而这“自行”将会违背“一致性”原则。针对这种问题,老土有如下建议。
1、可以考虑通过对原有框架进行“扩展”,使之可以覆盖更多的场景。比如老土的软件团队就在bootstrap和jquery的基础上,扩展开发了自己团队的前端框架Repack(http://repack.free4inno.com/)。
Repack(REsponsivePAge paCK)是一款面向页面的前端框架。在这个前端框架中不但提供了多种可简单重用的组件样式,而且提供了大量可以借鉴使用的“页面示例”。因为页面才是Web应用最基本的组成部分,所以这种提供“页面示例”的前端框架往往在使用可以极大的提高页面的开发效率,同时保持页面样式的一致性。
2、即使“页面示例”再多,考虑到应用的复杂度,前述的可重用和借鉴的框架也不可能普遍适用,因此还要建立相应的“一致性保持机制”。所谓“一致性保持机制”指的是当发现原有框架无法覆盖的场景时要如何避免开发者“自作主张”,从而导致应用失去“一致性”。这里老土的建议是:
1)重视前端框架使用培训,要求开发者可以充分了解目前前端框架的适用场景;
2)指定专人维护“前端框架”;
3)要求所有开发人员在遇到目前前端框架“不覆盖”的场景时,要将此场景汇报到专人处;
4)负责维护“前端框架”的专人针对此场景扩展前端框架;
5)开发者使用新的前端框架完成开发。
3、关于“专人”。虽然有管理和技术手段保证在多人协作的环境中仍然可以完成对“统一前端框架”的维护,但是从老土的经验看,最最有效的手段仍然还是以“专门的一个人”来完成维护。这种方式的效率最高。但是这种方式的问题在于这一个人将可能成为瓶颈。当有比较多的需求需要满足的时候,这一个人来不及完成更新,从而可能影响整体的效率。不过在前端框架进入到了相对稳定的阶段(经历过2-3个项目的实战应用),一般很少出现突发的大量的更新需求,在这个阶段一般来说一个人足矣。
4、上面讲的不但对界面设计适用,对应用交互设计也适用。通过总结不同场景下的交互的套路,从而形成团队的“交互规范”。“前端框架”和“交互规范”两者在一起便形成了一个开发团队的“应用(前端)设计规范”。而“应用设计规范”的形成和逐步稳定是一个团队逐步走向成熟的标志。