要想介绍组件,也许最简单的办法就是直接引用其倡导者、EightShapes公 司 网 站 上 的 解 释( 参 见 http://unify.eightshapes.com/users-guide/what-you-get/wireframe-components/):
组件是页面设计的一部分。
组件由通用的最基层元素(例如文本、链接、按钮、复选框和图片)相组合而成,它们是在页面的界面设计中可以使用(或重复使用)的有意义的组成单元。其他描述这种页面内集合的常用术语包括模块、元件、控件,甚至是分子。
而在 Nathan Curtis①的一次演讲“Creating a Component Library”(创造组件资源库)中,其释义也大致类似:
鉴于我们通常都以一个完整页面或页面状态为单位来观察,同时把页面上无法继续划分的部件(例如一个 logo、页首图片或者按钮)称为“元素”——我们可以说,组件是由元素相互组合而成的具有明确目的、可重用的独立结构。标签式导航条、搜索结果、文章内容都是组件。
模式一般都能在各网站间通用,而组件则只对应特定的某一个网站,非常具体。模式适合于交互设计师和其他运用草图、线框图或其他基础手段进行构思的人,而组件则专用于那些负责构建这些设计的人。它们的代码完整,能够重复使用,而且一个模式可以派生出多个组件。开发人员只需要把某个组件直接插入到页面中,定制其中的内容,就可以得到一个完整的页面区域。
2.2.1 组件六要素
组件资源库目前还不是十分流行,因此对现有资源的调查和最佳案例的推测尚不足以得出完善的结论。我们暂时以 Sun 公司网站中提供的公用组件资源库为例,列出以下需要包括的六要素(更多内容参见 2.2.2 节)。
1.组件名称
在 Sun 的资源库中,组件名称都是以页面标题的形式来展现的。不过在模式资源库里,也可以包含一个更为精确的“组件名称”项,提供一系列可供替换的名称。
2.组件版本号
组件的版本号与组件名称和示例(参见后文描述)的标题密切相关。和软件更新时的发布版本说明一样,版本号可以翔实地记载从一个版本到下一个版本中发生的变化。如果需要对之前实现的内容进行更新,版本号能引起开发人员的注意,而且确保开发团队能维持系统的一致性和连贯性。
3.定义
类似于模式里面的“描述”项,组件的“定义”会描述组件的目的和用途。在图 2-5 中,组件 B01 Features 的定义如下:
首页专题是 sun.com 网站首页中一个较为复杂而又重要的部分。它可以看作是首页推介元素的容器,循环显示首页推介的 3 个专题内容。
4.使用方法
“使用方法”项描述了组件应于何处使用,并包含相关信息。在 Sun 的“D05 Primary Index Nav”(基本索引导航)页面中,其使用方法如下:
在任何索引页上使用。如果没有额外内容,可以选择是否加入 See All(查看所有)链接。
该组件被限制只能在索引页上使用,同时可以从两种方式中选择一种来实现:带 See All 链接或者不带。使用方法项注明了这两点内容。
5.示例
示例为我们提供了一个鲜活、生动的组件实例。组件是经过实现后的页面元素,因此在基于网页的文档中,你完全可以添加那些带有完整功能的版本。通过实际的示例,团队内部的所有人都能直观地了解该组件的工作方式(它还能协助质保小组审核已实现版本的正确性)、外观,以及要实现它应使用何种代码。

图2-5 Sun.com的一份组件文档