导航设计与信息架构

作者:JunChen 来源:UCDChina.com 时间:2008-01-13 22:08:00 

大部分时候我们讲导航,讲的是导航对内容和结构的一种表现。就是说我们在讨论导航的时候,更多的去关注怎么与之交互,以及视觉上是怎么好看。但是导航,不仅仅局限于交互方式和视觉形式。

被狭义化的导航

回想一下我们是如何设计导航的?难道不正是根据内容、根据内容的结构去设计?最终,导航可能包含了三方面的功劳:交互设计、视觉设计,别忘了,还有信息架构。是信息架构决定了导航的设计。

信息架构决定了我们是用几级分类,一个项目是否可以属于两个或多个分类,等等。信息架构里面,有很大一部分工作是分类。分类,就是对已有的项目、内容,通过已知的共同属性,进行分组、归类。在计算机、信息系统被发明以前,人们就在不断进行着分类工作。从日常生活到科学研究,分类无处不在。我们为什么会要对动物、植物进行分类呢?哦,是为了形成科学的知识体系。那么当然,是先有了动物、植物、微生物的具体存在,才有了界、门、纲、目、科、属、种这样的生物分类法。为什么要分那么细致那么多层级?是因为生物届的复杂性要求分的这么细致。


所以我一直以来支持的观点是,根据内容去进行分类,和信息架构。所以我也十分推崇使用卡片分类法,既是定量分析也是定性分析。在有条件的情况下,推荐大家尝试。

回到开始的话题,如果我们考虑导航的时候,仅考虑其交互方式和视觉形式,那么很有可能反作用于信息架构。比如下面的例子。

Tab 式导航的例子

我们为什么要用 Tab 式导航?是因为它能比较好的表现出分类以及分类的结构(一般是两级)。并不是因为有了 Tab 式导航,所以人们才把分类分为两级。最初的时候,一定是因为先有了两级分类,设计师才设计出了精妙的 Tab 式导航。而 Tab 式导航的大规模使用,也在反面的影响大部分信息架构的设计。简单的几项内容,本可以一级逻辑表明,却被套用了两级分类,理由是 Tab 式导航比较好看。就好比人们总是习惯于用四个汉字作为导航文案一样。比如蛮好用“新闻”两字可以的,非得用“新闻热点”。这道理是一样的。

导航的交互和视觉设计不应该影响信息架构的设计。鱼眼菜单真的那么好用么?如果原本一个下拉菜单就十个菜单项,你会选择用鱼眼菜单吗?或者又是仅仅因为它很酷。

仍然是那个问题,什么样的内容,决定了什么样的导航。尤其要注意下,我这里说的内容,不仅包括文本资料的分类,也包括功能型网站的用户任务和目标。

导航不仅仅是 Tab

我们看到在 Office 2007 系列产品中,原来的菜单已经被板砖儿样的按钮所取代。这些被称为 Ribbon 的板砖儿,或者称之为 Context Navigation(情景式导航),是对类似交互操作的一种分类。显然,情景式导航,已经超越了简单的针对内容的分类。

搜索框是一种导航吗?这样说似乎有些牵强。但是在信息检索系统中,搜索框、过滤器等,确实是起到了导航作用的。或者我们可以称之为辅助导航。

归本溯源,导航为什么会存在?在所有的系统、应用中,都是为了让使用者能够高效的完成任务、达成目标。这样的话,从广义上讲,引导用户快速完成任务的链接、按钮,都可以作为大导航系统的一部分。

可能很多朋友有这样一个问题:导航设计是否要考虑商业目标?我觉得这与上文并不冲突。具体的可留待讨论。

小结

不要为了导航而导航,前面一个导航是指表现形式,后面一个导航是指实际的导航系统。

对于导航的设计,信息架构比交互方式、视觉形式更加的重要。

导航不仅仅是内容的一种分类,也包括类似交互操作的分类。导航的目的是为了让使用者高效的完成任务、达成目标。

情景式导航有可能是导航设计的一种发展趋势。

标签:导航,内容,用户体验
0
投稿

猜你喜欢

  • php5.3 不支持 session_register() 此函数已启用的解决方法

    2023-11-16 01:59:39
  • Python画图常用命令大全(详解)

    2023-04-17 15:20:16
  • 支付宝 接口开发帮助(asp,php,asp.net,jsp)

    2024-05-21 10:11:35
  • 常用的Git便捷操作合集

    2022-02-19 08:16:47
  • 找Python安装目录,设置环境路径以及在命令行运行python脚本实例

    2022-06-01 23:28:56
  • python数据结构的排序算法

    2021-03-11 04:04:10
  • Win7或Windows server 2008中IIS7支持ASP+Access解决方法

    2012-03-27 18:31:27
  • 用javascript实现Base64编码

    2008-03-04 16:51:00
  • Python+OpenCV实现图像融合的原理及代码

    2022-08-01 00:03:52
  • Python Matplotlib绘制箱线图boxplot()函数详解

    2021-03-09 11:16:07
  • linux系统使用python获取内存使用信息脚本分享

    2022-10-14 07:50:53
  • 基于Python实现迪杰斯特拉和弗洛伊德算法

    2021-06-14 08:07:25
  • Mysql常用基准测试命令总结

    2024-01-22 17:22:05
  • 用python生成mysql数据库结构文档

    2021-05-15 12:04:33
  • PHP7正式版测试,性能惊艳!

    2023-09-12 07:41:43
  • Python协程的2种实现方式分享

    2022-12-21 12:42:56
  • python random从集合中随机选择元素的方法

    2023-07-05 08:29:45
  • 联邦学习论文解读分散数据的深层网络通信

    2023-09-06 00:07:37
  • MySQL乱码问题深层分析

    2009-03-09 14:53:00
  • Python之web模板应用

    2021-06-27 10:13:47
  • asp之家 网络编程 m.aspxhome.com