移动用户体验设计考虑的因素“是web,还是原生”
发布:2021-12-07 15:44:58 浏览:2176
你可能知道,用户体验设计是涉及交互式产品设计原则的一门整,包含圈形设计和情感设计的重要元素,但它主要还是关于交互设计的。在设计领域,用户体验设计和产品设计的关系是最紧密的。用户体颜色设计师主要设计的是虚拟产品。此外,因为硬件设计和软件设计如此紧密相连和不可分离,所以产品设计和交互设计之间的分割线即使存在,也是很模糊的。
-
Web设计师是用户体验设计师
从本质上说,一个web设计师就是具备万维网媒体领域的专业知识的用户体验设计师。一个web设计师应具备核心技术(如HTML、CSS、Javascript)并懂得一些web框架(如LES、Stylus 等; HAML、Jade等:了解基于这些框架的组件。这些框架和内部组件都是由代码生成的,这些代码决定了设计的局限性和那些组件的行为。
正如一个汽车设计师必须了解各种各样的材料才能去制造汽车-样,一个Web设计师也必须懂得以上知识,才能去设计网站或者应用程序。作为交互设计师,我们不只是对交互产品的外观感兴趣,还要关注产品的公为。当你设计应用程序(以行为设计为主的产品)而不是文档(以内容设计为主的产品)时,关注产品的行为方式将尤其重要。设计一款汽车就是绘制一张漂亮的汽车图,同样的道理,设计一款软件也就是绘制一张漂亮的软件图。
-
设计文档VS设计应用程序
即使是设计交互文档(尤其是用来表现Web的响应式本质)也需要专业知识,至少需要理解响应设计原则和渐进增强。另一方面,绘制漂亮的图画只是艺术,不是设计。然而,交互式产品或应用程序则是完全不同的。交互式产品的设计需要图形设计和情感设计的技能,最重要的是,需要交互设计的技能。一个交互产品最重要的是它的交互行为,这些交互行为是由代码构建的。
不幸的是,由于设计团队成员的分工更加细化,Web设计师和Web开发者的角色被人为地分开。虽然这种分工在团队合作中可能是必要的,但是,这些标签应用来定义团队成员当前的工作,而不是来决定他们所需掌握的知识。或许你应该关注某个领域更多一点(尤其是在特殊项目中),但是你必须明白我们构建产品的首要目标是满足用户的需求,开发团队中的每一个角色都将会影响用户体验。着就是为什么小型跨学科的团队才是势在必行,团队的每个成员都应该总是首先为用户着想。
-
首先为用户设计
当构建一款产品时,设计主导开发,开发形成设计。这是一个周期循环交替的过程,在这个过程中,目标是不断优化产品来满足用户需求。
你做的每一个关于产品的决定都应该源自用户。你必须首先考虑用户的需求,而不是你自己的需求。换句话说,试着所谓的“由外而设计”。思科用户的需求和他们的使用情景,设计用户将看到的和可能互动的内容,然后再决定如何解决你提出的问题。
-
“原生“是(不是)”0“和”1“
如果我们从通俗的角度来看,“原生“(数字设备相关的)指代供给电脑设备能量的晶体管中是否存在电流。我们通常将这个视为数字计算机的陈词滥调:二进制代码,一系列0和1.我们称这些二进制指令为继器语言。
虽然计算机曾经是以二进制的形式被编码的,但我们心啊在已不再使用这种冷冰冰的编码方式了。然而,我们重新设计的每一种编程语言(像C语言、Python、JavaScript 等)最终都被翻译为机器语言“0" 和"1",这些机器语言又被编译为晶体管中是否存在电流,这些技术都是建立在抽象层面的。例如,Python是由C语言写的。每个从高层级(包括现代计算机系统技术)抽象出采的层级都是为了使开发者更容易地开发应用程序,因此,虽然从技术角度来说,)将“原生“解释为二进制编码是正确的,但在今天却是一个毫无意义的定义。那么,现在我们了解”原生“不是”0“和”1“之后,我们再来搞清楚”原“到底是什么吧!
-
原生文化
“原生”是指形成平台文化、语言、惯例和规范的技术(即语言和框架)e _是一个底层抽象的概念,包括特定平台的主要符号、手势,以及用户与平台软件互动时的交互行为。这些元素是最重要的元素,因为它们构成了平台的文化和规范。1它们也是语言(视觉和行为上的),是用户使用平台时,为了和平台软件进行交流互动而需要学习的语言。反过来说,它们也是平台软件和用户交流时使用的文字、短语和理念。在特定平台中,这些元素越有用,和用户交流时使用的文字、短语和理念。在特定平台中,这些元素越有用,越一致,那么为此平台创建原生软件的优势就越大。
一方面 我们有Apple的ioS平台,它拥有详细的人机交互准则'和优雅一致的Cocoa Touch框架。遵守这个交互规则的原生应用将会再其主要框架中继承平台的可用性,并且和平台其他用户所熟悉的软件保持一致性,敬而看起来是用户熟悉的软件。另外,还存在一些像Android那样的原生平台,它们的风格大多由制造商、运营商和用户来深度定制,因此Android系统的手机和软件之间有很少的(甚至没有)一致性。这些平台的原生软件设计师很难提供一致的用户体验。
例如,我的一个iPhone软件: Feath- er',它拥有一一个定制的键盘,使用户能够输入扩展的Unicode符号。在iPhone中,这个软件看起来很像iPhone的内置键盘软件。实现这些,虽然我需要做出一些努力,但还是能够做到的。然而,我如果要将这个软件引进Android平台,就不得不了解用户安装的是哪一种Android键盘,然后才能定制与之匹配的交互行为。不用说,这将涉及很大的工作量,甚至是不可行的。例如,-些Android手机上的swype键盘2是一项申请过的专利,. 因此,对于拥有swype键盘的Android设备,我不能使我键盘的交互行为和系统键盘保持一致。