浅析“Rich”设计模式
作者:包子 来源:Tencent CDC Blog 发布时间:2009-03-12 12:36:00
但凡设计师都对简洁的设计情有独钟,我们不喜欢复杂,却也不能不会rich。
先来看下“rich”在字典里的意思:
(1) having an abundant supply of desirable qualities or substances;
(2) of great worth or quality;
(3) very productive;…
可见,“rich”即暗示比满足普遍需要或期望的要多。
那么以RIA为例,来看下RIA(Rich Internet applications富互联网应用程序)比IA(Internet applications)多在哪?
更快、更直接的互动、更仿真、更流畅的体验、更cool、更好玩、更易安装、更容易传播、更安全…更容易使用户迷惑、更复杂、更容易不切实际、更难部署、更高开发成本…
——可见,多出来的既有优点也有缺点。
我们假设B=f(U,E),即行为(Behavior)是一种以用户(User)与环境(Environment)为变量的函数(function)。
我们想要通过交互设计创建一个符合逻辑的流程以及在其中进行的符合意料的行为,但是我们不能直接控制用户,我们需要通过交互、界面设计等,找到有效控制环境的方式。因此,我们要仔细的研习下更“rich”的控制与体验并不断探索。以RIA为例,这种探索包括了解其应用类型与常用模式,了解其设计挑战与风险,在设计其应用时注意扬长避短,并学会评估由此形成的效应。
应用类型与常用模式
RIA从应用上可以做为:
• 单独的软件、widget(脱离浏览器在桌面上运行)
• 网站的某些部分(在浏览器中有效地运行)
• 添加到传统的网页的“丰富组件”(来导航或互动)
且目前已有以下几种类型的应用:
• 信息/参考应用:网络/本地资源的整合,搜索,多媒体,用户参与…
• 资源浏览/编辑应用:浏览,阅读,检索、分类,协作,发布…
• 电子商务应用:购物,数据库浏览…
• 实用应用:提示,过滤,帮助,向导…
• 娱乐应用:游戏…
• 营销应用:广告…
再将这些模式分解:
• 交互——每一种模式都以一种交互开始。
悬浮、鼠标滑过、点击、释放、快捷键、拖拽、移动、选择、定焦、调整大小…
• 操作:
查找——“我需要的时候能找到信息”
自动匹配、载入内容、缩小选择、及时搜索、精确搜索、动态过滤、细节缩放、随需刷新、悬停出现的详细信息、原位替换、可调整大小的模块、滚动的模块、模块扩展…


猜你喜欢
- 1.gorm介绍1.1介绍全功能 ORM关联 (Has One,Has Many,Belongs To,Many To Many,多态,单表
- 有的时候取出全部数据库记录也许正好满足你的要求,不过,在大多数情况下我们通常只需得到部分记录。这样一来该如何设计查询呢?当然会更费点脑筋了,
- 使用xlwt读取txt文件内容,并且写入到excel中,代码如下,已经加了注释。代码简单,具体代码如下:# coding=utf-8'
- 会用到的功能的简单介绍1、from bs4 import BeautifulSoup#导入库2、请求头herdersheaders={
- 本文实例讲述了Python实现按照指定要求逆序输出一个数字的方法。分享给大家供大家参考,具体如下:问题是:输入一个数字,按照指定要求逆序输出
- 一、前言今天学习视频时课后作业是找出1000以内既是素数又是回文数的数,写代码这个很容易,结果一运行遇到了bug,输出结果跟预期不一样,调试
- 使用drop函数删除dataframe的某列或某行数据:drop(labels, axis=0, level=None, inplace=F
- os.path.dirname() 获取父目录os.path.basename() #获取文件名或者文件夹名python2缺省为相对路径导入
- 0、干货先写在前1、前端传值的数据必须使用JSON.stringify()传化2、后端,通过request.body接收数据,直接使用jso
- 文件对象提供了 read() 方法来按字节或字符读取文件内容,到底是读取宇节还是字符,则取决于是否使用了 b 模式,如果使用了 b 模式,则
- 前言和Word、Excel承载数据的能力相比,PPT的应用重点在于表演。比如一场发布会、一场演说、一次产品展示、一次客户沟通&hel
- 本文实例讲述了python3 BeautifulSoup模块使用字典的方法抓取a标签内的数据。分享给大家供大家参考,具体如下:# -*- c
- 1. 问题描述对右图进行修改:请更换图形的风格请将 x 轴的数据改为-10 到 10请自行构造一个 y 值的函数将直方图上的数字,位置改到柱
- 代码如下: var lishustr = "qwertyuiopasdfghjklmnbvcxz"; var s = l
- 今天,又由一到题目引发了一场我跟JS基础的较量:首先是var getName = function(){alert(1)};function
- 前言闲暇时间抽个空写了个三国杀武将手册的小程序,中间有个需求设计的是合成武将皮肤图、竖排的武将姓名、以及小程序码,然后提供保存图片到相册,最
- 概述我在教学和实际设计中的一些心得。就不长篇大论了!让大家省些时间,捞干的。尽量通俗易懂。想知道怎样设计标志,就要知道什么是标志?标志:外来
- 用比较笨的方法来做abc ="AlkjA;lkjlkjAlkAkjAlkjAAAA" if instr(abc,&quo
- 我的PJBlog在从2.7升级的3.0的时候,犹豫了很久。升级到PJBlog3.0就是看中了新增的静态页面功能,但是同时又担心造成博客出现大
- 前言:存储引擎是数据库的核心,对于 MySQL 来说,存储引擎是以插件的形式运行的。虽然 MySQL 支持种类繁多的存储引擎,但最常用的当属