如何阐述这种交互设计?

2019-04-23 14:58:36 +08:00
 CSGO

有这样一个例子,一个程序修改个人资料的性别,现在是修改性别,点击确定,就得传到服务器,但是如果网络比较差,就会出现 loading,或者就干脆失败。

但是我作为交互设计师,我认为这个修改对整个程序重要程度不是很大,就是传到服务器的实时性不是很大,没必要修改的当下,就必须要传到服务器。就像在玩游戏的的时候修改游戏的设置,游戏结束后或闲置的时候,把设置同步到云;或者说类似 chrome 的书签,保存书签的时候,我想必不是一下子就必须要同步上去吧,没网就不让保存书签。所以它应该是一种类似同步的机制,那么其实整个程序,可能会有很多地方需要用到类似的这种机制,所以这个机制有没什么专有名词?可以让开发或者我学习其背后程序的逻辑,比如是怎么判断哪边信息是最新的,或者什么实际上传数据等等。

936 次点击
所在节点    问与答
4 条回复
zgcwkj
2019-04-23 15:11:05 +08:00
你可以了解以下 git,svn 之类的工具,他们是怎么实现的
learnshare
2019-04-23 15:32:19 +08:00
是在讲两件事:一件是非实时的数据传输,另一件是数据同步及一致性。
----
具体名字并不清楚,但算是比较常见的数据同步机制。

比如浏览器的书签和数据同步,本地和服务器上有且必须有完全相同的数据。
本地对书签记录进行某个操作(添加、修改或删除)之后,将这个操作及相关数据发送到服务器。服务器对数据进行完全相同的操作,这样两边就是同步的(数据一致)。

简单的情况是:一端产生了某个动作,这个动作包括时间戳、操作对象、操作类型及相关数据等信息,将这个动作传递给另一端,进行完全一致的数据操作。
复杂的情况下,需要考虑多端对同一个数据进行操作时会发生冲突(比如客户端和网页同时修改和保存个人资料),需要自动处理冲突的内容。
lindongwu11
2019-04-23 21:11:18 +08:00
这个叫「积极更新」,或者「乐观更新」,英文是 Optimistic Update。
当然一般不会等这么久才上传,一般乐观更新是等一两秒发现网不好更新失败就回滚并在 UI 上做出提示。
CSGO
2019-04-24 09:56:32 +08:00
谢谢大家,都惯例打闪了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/557921

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX