产品的肢体语言?C交互动画
“清水寺做题”通过精心收集,向本站投稿了4篇产品的肢体语言?C交互动画,以下是小编帮大家整理后的产品的肢体语言?C交互动画,供大家参考借鉴,希望可以帮助到您。
篇1:产品的肢体语言C交互动画
随着体验经济时代的到来,人们对产品界面的期待值也越来越高,交互动画在手机领域的应用已经非常普遍,例如iPhone充分发挥了动画在交互易用性方面的优势, 而交互动画会给用户带来一种舒适、自然和流畅的感觉。 交互动画逐渐成为了产品与用户之间的沟通方式,成为产品的肢体语言。尤其是目前高端机的性能提升迅速,也为交互动画的执行效率提供了有效的硬件保证。
Google地图的让工具化与拟物化结合,不论是翻起页面的效果,还是图钉的效果,都是还原真实场景中的操作,通过动画的表现,让其更加逼真。也使界面更加的有层次。
在产品设计过程中,合理运用交互动画让产品与用户更好的互动,让产品变的更具情感,合理的动画运用可以:
提高用户操作流畅性
随着移动终端设备硬件以及软件的不断强大,带给用户的选择也会越来越丰富,用户在使用产品功能的同时,也追求完美的操作,与产品产生良好的互动。
目前app以及wap站的视觉效果绚丽完美的同时,同时带有很多的复杂视觉元素,处理好每个视觉元素的关系,以及有效的传达用户操作后元素之间的关系变化,就需要设计交互动画,阐述其变化的逻辑与过程,让操作更合理,更流畅。
提高用户兴趣,降低学习成本
通过巧妙的交互动画让用户理解产品功能,进而让用户产生良好的心理感受。让用户更容易了解功能,更好的方便的使用产品。有时详细功能的讲解,往往不如一个简单的交互动画效果更具吸引力。目前在游戏中广泛应用。
强化品牌一致性
弹出层,界面滑动,分屏,返回,前进等等,这些交互动画无不流露出品牌的特性与情感
一个标志性的动画效果,往往也会是一个产品的代言。
交互动画设计法则
传达有价值的信息
在用户完成行为之前把结果展示给他们,使他们能更确定自己的行为,避免出错。帮助用户预见自己的行为将造成的结果。
在iphone的屏幕上移动应用图标时,当你把一个图标拖动到一个位置时,旁边的图标会向后或向两侧移动告诉你当你松开手时这个图标将要停放的位置,
以下是总结的交互动画的一些设计原则:阐述清晰,精确引导
动画是可以清晰阐述产品功能间的切换过程的。当用户进入一个不同的交互模式时,比如两个应用程序之间的切换,动画可以提供一个指引,告诉用户已进入另一个场景。
当我们最大化窗口的时候,这个窗口不是简单的直接放大,而是平滑地向四周展开。这样我们就可以清晰地知道这个窗口被放大了。
动画时长巧妙掌控
在设计动画时,注意动画执行的时间,并且在一些较高频率操作的功能中的动画,是要可以通过操作(点击两次此操作,或是其他操作,点击空白处或是目标区域等等)跳过的。
执行效率需多考虑
目前交互动画在高端机方面应用越来越多,但是各个机型的配置不尽相同,在考虑动画时,需注意各个机型的执行效率,如果覆盖面较广的产品,需要设定一个合理的可支持最低配置以及搭建测试环境,以便确保动画在执行时不会给机器带来过大的压力。
尊重现实规律,或让用户具有“超能力”
就是要符合逻辑规律与自然规律。比如动画中如有位移,应与指向目标位置方向移动;拟物化的设计,就需要真实的动画去模拟还原真实的过程。有时也可以在真实的场景中,让用户完成真实场景中人类不能完成的事情同样也会跟用户满足感。
点到为止,过犹不及
动画的使用犹如双刃剑,顺其势可披荆斩棘,塑造更完美的产品,如使用不当或是滥用,则往往适得其反。
使用频率较高的功能,慎用交互动画
如果是用户使用率非常高的功能,交互动画时一定要慎重。动画执行次数过多也会让用户反感,并延长操作时间。
用户输入,请勿打扰
用户在专注于内容的创建或是填写信息时,动画会分散用户的注意力,甚至让用户产生坏心情。但是信息提交,信息发送等操作,设计巧妙的动画,往往会增加用户的成就感。
尊重用户习惯,“标新立异”不可取
我们要避免触及系统的标准行为,尽量尊重用户习惯。在iPhone中,动画式响应方式是标准的界面风格,比如窗口内容的上下卷滚、元素的出现和消失,以及内容的放大、缩小等等。
用户清楚这些常见的界面元素是如何工作的,他们不愿在每次点击按钮的时候,被迫花费多余的时间去看一些不必要的动画。
篇2:Lua与C语言间的交互实例
这篇文章主要介绍了Lua与C语言间的交互实例,本文主要讲解了Lua中调用C语言的方法和例子,需要的朋友可以参考下
Lua 是一门轻巧、灵活、扩展性很强的脚本语言,它可以很容易的嵌入到其他语言(C/C++)中使用,这主要得益于其提供了功能强大的 C API,这让其跟 C/C++ 间的互调成为一件很轻松的事,
Lua 调用 C
Lua 调用 C 函数,其实就是把 C 函数注册到 Lua 中去,把 C 函数地址传递给 Lua 解释器。这个传递是要遵循一个的协议的,即:
代码如下:
typedef int (*lua_CFunction)(lua_State* L)
Lua 和 C 是通过栈(State)来交互的,Lua 调用 C 函数时,首先 Lua 把数据拷贝到栈上,然后 C 从栈上获取数据,调用结束后将返回结果放到栈中。栈中的每个数据通过索引值进行定位,索引值为正时表示相对于栈底的偏移索引,索引值为负时表示相对于栈顶的偏移索引,索引值以1或-1为起始值,因此栈顶索引值永远为-1 ,栈底索引值永远为1 。栈相当于数据在 Lua 和 C 之间的中转站,每一个 C 函数都有自己的独立的私有栈。
利用 Lua 提供的 C API,调用 C 函数很简单,例如下面例子:
代码如下:
#include
#include “lua.h”
#include “lualib.h”
#include “lauxlib.h”
static int l_sin (lua_State *L)
{
double d = luaL_checknumber(L, 1);
lua_pushnumber(L, sin(d));
return 1;
}
static const struct luaL_Reg mylib [] = {
{“lsin”, l_sin},
{NULL, NULL}
};
int luaopen_mylib(lua_State *L)
{
luaL_openlib(L, “mylib”, mylib, 0);
return 1;
}
把上面代码编译成一个静态资源的 so 文件,加入把上面代码保存在一个名为 mylib.c 的文件下,把它编译成一个名为 libmylib.so 的静态资源文件里,gcc 编译语句如下:
代码如下:
gcc mylib.c -fPIC -shared -o libmylib.so
把上面代码放在 LUA_CPATH 目录下(LUA_CPATH 目录位置说明详看《Lua 学习笔记(4) -- 模块与包》,这里就不多说了),
把 libmylib.so 资源文件加载到模块目录下后,就可以在 Lua 代码里直接加载 require 进来使用,例如如下使用:
代码如下:
require “mytestlib”
print(mylib1.lsin(10))
篇3:产品中图形语言规范化的意义与过程交互设计
现在随着互联网企业的发展与业务的拓展,随着时间的推移,一个公司的产品可能将越来越丰富多样,同样每一个产品随不断的功能完善和扩展,随着一个产品的“长大”产品内所需要用到的图标也必然会越来越多,这时候众多产品形象的呈现、产品内图标等视觉原素的表现,如何能与整个产品或公司的战略计划相适应,这时候在图形语言的视觉呈现,语义表达、识别性等层面就需要作一个全面细致的考虑了,
我们来看几个典型的例子,回顾一下 Adobe 产品系列的成长过程, 从 Adobe 收购了原最大的竞争对手Macromedia公司后,它的产品线得到了极大丰富, 而后在Adobe确立了Creative Suite概念后,后续的新产品持续推出,庞大的产品线以一种什么样的展现方式呈现在用户面前便成为了一项非常重要的课题。下图中我大致的列了一下Adobe产品logo的一个进化转变过程:
产品阵容强大的Adobe帝国在CreativeSuite 3发布的时候为旗下全部产品Logo进行一个色环划分图,很好的呈现出各产品logo的色彩关系和一个完整的用色体系。
我们再看一个例子,Apple公司在和先后将itunes与App store的Logo作出了比较重大的调整,到Max OS Lion版本时,两大平台级的产品新形象同时展现在用户Mac的Dock上。虽无准确的官方答案,但从一个是整个Apple产品资源应用来源和一个是娱乐内容来源的的两个具有类似性质的商业平台产品来看,它们显然是被Apple寄予相当大期望,在感观上看来,它们在被赋予更厚重、大气的形象这一改变,能够很好的服务于其公司的商业战略。
另外itunes 10的发布后侧栏的图标全部变成了单色,这一变化我认为是为了突出Store的资源核心区域,强调产品的平台性,和上述的分析一样,这个视觉表现层面的调整同样是为了整个产品的资源商业战略服务的。
那现在回到我们自己的产品,现在“我的阿里”作为一个网商用户的得力助手,用户的家,“我的阿里”内容与应用在日益的增长,系统越来越庞大,同样网站的视觉的图形语言的整理,解决原来积累已久的视觉表现“乱象”也日益的紧迫。
在“我的阿里”视觉元素整理的第一步,众多应用图标是头一个切入点,我们从图标的含义,分类,尺寸规格、设计规则,风格表现等几个方面进行一个整体方向的规划,总结一套设计指南。
■ 在图标的分类上,我们将网站图标分为以下三类:
一产品图标(Logo)
它是一款产品在品牌层面上的定义,指一个产品系统形象、定位和诉求的集中图形化表现,产品图标(Logo)起到产品或公司识别推广作用,通过形象的图形标识让用户认识、记住并熟识一个产品。
产品图标设计原则:
1 能很好的诠释出该产品所承载的功能 和 所要向用户传达的产品价值和形象;
2 图形容易被用户所记忆、熟知,而且有较强的排它性(不易和其它图标混淆)。
二产品界面中的功能、工具图标
在一个产品界面中,用概括精炼的形象来表示某一类功能或操作集合的功能性图形标识,常会有成组有规律的在某一功能模块中出现,
色彩造型表现可以精致富有表现力,也可以简洁明了,质感单纯。
功能、工具图标设计原则:
1 表意清晰明了,采用大家均已接受的特定含义的元素图形;
2 视觉体验统一,视觉语言自成体系;
一个功能模块里面的图标尺寸要有较好的视觉平衡性;
一功能模块内甚至整个产品的图标的质感、色彩饱和度要统一;
成套的多个图标内,图形语义要有较好的一致性。
3 需要注意图标各层面意义上的继承性问题,避免让用户造成识别上的困难。
三图形符号
一般表现为直接的操作按钮或标明该操作的辅助标识符号,图形表现为简洁明了,用色简洁、扁平。
■ 在整站图标尺寸规格方面,虽然Web 页面的图标不需要像操作系统或者客户端软件那样,对图标尺寸有着
严格的尺寸限制,但为了网站的视觉体验的规范性和统一性,“我的阿里”图标规范中根据以往图标各尺寸的使
用情况来约定3种常用尺寸:48×48 pix 、32×32 pix 、16×16 pix,
以后整站的图标根据各自的位置和需要,将有序的根据规则加上相应尺寸的图标,这样网站在图标符号展示层
面上将会给用户留下一个规范、专业的印象。
■ 在图标的设计过程中还需要注意下面这些问题:
上图第一排蓝色的4个图标看起来会显得大小尺寸参差不齐,这是因为虽然觉得尺寸可以是一样的,但是外轮廓饱满的实心图形在给人的视觉感受上会产生放大效应,而第二排深色的4个图标大小看起来则会更加协调一些。在下图可以看到,外轮廓饱满的图形进行了一定的边缘收缩,来与其它图形达到视觉均衡。
这要求设计图标在符合约定的图标尺寸的同时,需要注意多个图标的视觉均衡问题,在制作成套图标的时候,根据这个规律来选择留白的空间比例。
此外单个图标要很好的把握外轮廓与图形形状的均衡关系,构成图标的图形需要尽量的接近一个正方块,使得图形饱满、平衡。
■ 在我的阿里应用图标风格表现方面为了使原来的各业务、应用图标和将来新增的图标能够实现非常好的统一性,我们做出了包括图标视角、构成元素、光源质感、倒角这些方面的约束:
图标的绘制视角为所组成物体的正前视角,在必要情况下可以有一定角度的俯视角。这样是既在大原则上保证了整体的统一性,但规则也不至于太过僵硬,仍有相当的空间让设计师去发挥创意。
整个 icon 元素为 3个以下,最多为3个元素构成 ,组合方式以一个主体元素 配合一个(最多两个)辅助元素。避免众多的图标,各自的图形符号多寡不一,避免在图形组合方式上造成的不统一。
图标的光源方向是正上方,图标颜色渐变方向是垂直方向的线性渐变,颜色从上到下由浅到深。图标的颜色渐变幅度较小,偏扁平感,渐变幅度不要太大以至质感过重。
应用图标约定的三种不同尺寸icon 的倒角的大小,以便在集中展示的时候在细节支出依然有良好的一致性。
经过以上这样一套设计指南的规范、约定能尽可能的保证原来老图标和后期新增加的都能有一个规则可寻,对整个网站整个产品的品质方面,用户友好性方面能起到一个积极的作用。
这里只从应用图标这一切入点介绍了产品视觉元素统一性的解决方案,当然网站还有其它各类控件模块,同样也需要实现类似的标准化统一体验,后面仍有许多工作需要开展。
篇4:非直连方式下C语言程序与数据库的消息交互流程
【文章摘要】
在《如何在C语言里面执行SQL语句?》(www.zhouzhaoxiong.com/116.html)一文中,我介绍了直连方式下C语言程序与数据库打交道的过程,
本文简单介绍非直连方式下C语言程序与数据库的消息交互的流程,供大家参考。
一、消息交互总体流程
非直连方式,也称异步方式。顾名思义,在这种方式下,C程序不直接与数据库打交道,而是通过一个独立的第三方模块与数据库进行消息交互。消息交互的总体流程如图1所示。
图1 消息交互的总体流程
该方式的优点如下:
第一,C程序不必一直等待数据库的返回结果,可以继续执行后面的流程,这在一定程度上提高了程序的执行效率。
第二,C程序只需将包含SQL语句的消息发给第三方模块即可,不必实现连接数据库、在数据库中执行SQL语句等较为复杂的功能,这在一定程度上简化了C程序的操作流程。
该方式的缺点如下:
第一,系统架构较为复杂,需要准确配置C程序与第三方模块的链路,同时要保证第三方模块功能的正常性。
第二,C程序要准确定义并解析消息序列号(会话号),否则极有可能会导致第三方模块返回的结果出现混乱,这增加了C程序时序处理的复杂性。
二、消息交互流程
C程序向第三方模块发消息的流程如图2所示。
图2 C程序向第三方模块发消息的流程
从图2中,我们可以看出:
第一,C程序发给第三方模块的SQL语句必须要符合语法规则,否则,即使是消息发送成功,也不会返回正确的执行结果,
第二,为了正确接收到第三方模块返回的消息,C程序要定义好消息事件号(第三方模块在返回执行结果时会原样返回该事件号),同时也要分配好会话号(第三方模块在返回执行结果时会原样返回该会话号)。这样可以保证C程序对第三方模块返回消息的解析的正确性。
第三,当向第三方模块发消息的函数执行失败之后,不要再继续执行后续流程,同时要打印详细的失败日志,供查看问题所用。
第四,当向第三方模块发消息的函数执行成功之后,C程序可以继续执行后续流程,但分配的会话号不要释放掉了。
C程序接收第三方模块返回消息的流程如图3所示。
图3 C程序接收第三方模块返回消息流程
从图3中,我们可以看出:
第一,会话号是保证C程序处理时序的关键。在程序中,会话号一般是保存在全局的会话缓存中的。
第二,只有当向第三方模块发消息时的会话号与第三方模块返回消息时的会话号一致时,C程序才能进行对应的处理。当C程序利用SQL语句执行结果走完后续流程之后,一定要释放该会话号。
第三,C程序是根据事件号进入对应的流程进行处理的,为了确保流程处理的正确性,在向第三方模块发消息时一定要定义好清晰的、容易区分的事件号。
三、总结
在实际的软件开发项目中,C语言程序和数据库打交道可谓是家常便饭。是选择直连的方式?还是选择非直连的方式?这就要综合项目的实际情况、已有模块安装情况等进行合理的选择。
本文介绍了非直连方式下C语言程序与数据库交互的具体流程,为相关软件开发工作的顺利开展提供了有益的参考。
【产品的肢体语言?C交互动画】相关文章:
1.演讲时的肢体语言
2.c语言学习方法
3.c语言面试题
4.c语言实验报告
5.c语言练习题
6.C语言求职信
7.c语言学习心得
10.C语言排列搜索






文档为doc格式