钉钉能不能两个群编辑一个文档,怎样把钉钉群多人协作文档关闭

首页 > 经验 > 作者:YD1662024-03-01 02:50:55

兼具信息同步与异步传播的能力,协同文档的诞生,无疑给基于互联网的沟通协作带来了一场革命。

这场革命爆发于 2006 年,而它的起源,早在 17 年前。

钉钉能不能两个群编辑一个文档,怎样把钉钉群多人协作文档关闭(5)

1989 年,代表着「文档」的 Microsoft Office 第一次在 Macintosh 系统上与世人见面,而代表着「协同」的操作变换算法也第一次见诸论文。

Microsoft Office 众所周知,而操作变换算法又是什么呢?

数据一致性问题与操作变换算法

对协同编辑最简单的理解类似于群聊天,每个人在自己的电脑上修改文档,把操作群发给其他打开这篇文档的用户。当收到来自其他用户的操作时,重放这个操作。比如下面这个例子:

钉钉能不能两个群编辑一个文档,怎样把钉钉群多人协作文档关闭(6)

但美好的设想,难免遭遇现实的挑战。因为网络存在延迟,来自不同用户的操作有可能在各端有不同的执行顺序。相同的操作,不同的执行顺序,会产生不同的结果。比如:

钉钉能不能两个群编辑一个文档,怎样把钉钉群多人协作文档关闭(7)

数据一致性是协同编辑的最低要求。当然,我们可以强制操作按照到达服务器的时间来排序,但这种排序会破坏用户编辑当时的上下文,产生不符合用户预期的编辑效果。

操作变换算法就在这里被引入了。

操作变换算法不是一个算法,而是对一类算法的统称。它们针对不同的文档数据模型,解决一个相同的问题:

基于同一个状态的两个操作,如何调整一个操作的参数,使得它可以在另一个操作之后执行,表达同样的用户意图。

上面的例子加上了操作变换,就可以解决数据一致性的问题,如下图所示:

钉钉能不能两个群编辑一个文档,怎样把钉钉群多人协作文档关闭(8)

上一页123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.