Atom支持实时协作编程了

Posted 前端之巅

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Atom支持实时协作编程了相关的知识,希望对你有一定的参考价值。

在旧金山举办的 2017 QCon 大会上,GitHub 的 Nathan Sobo 披露了 Atom 最新的实时协作插件——Teletype。Teletype 的目标是让两名开发者轻松地协作编写代码。

Teletype 能够让开发人员创建一个新的协作会话,并通过链接的形式与其他同事进行共享。每个协作者都有自己的输入光标,并且可以自由地和其他协作者一起输入。

Sobo 说,协同编辑是一个棘手的理论问题。Atom Teletype 提出的解决方案是让每个协作者修改他们自己的文档副本。本地的编辑会立刻应用于本地副本,之后会传输至其他协作者。这会导致不同的副本可能会以不同的顺序应用各种修改,但是 Teletype 应用了 conflict-free replicated data types(CRDT)算法,该算法能够确保所有的副本最终的内容会是一致的。

Teletype 使用 WebRTC 来连接各个协作者,这就意味着除了最初的握手依赖于 GitHub 的服务器之外,所有的传输都是点对点的。为了确保隐私,所有的数据传输都是加密的,并且从不访问 GitHub 服务器。

GitHub 为文本编辑而开发的 CRDT 也可以作为独立的库使用,同时还提供了一个完整的独立于编辑器的库,它可以将同样的功能集成到基于 Web 的或基于 Electron 的应用程序中。

根据 GitHub 的说法,开发 Teletype 是为了解决 Atom 团队自身的需求,它是全局分布式的,而且可以改善开发人员的工作流程,例如新人入职快速熟悉代码和编码规范,审查同事的工作,学习新技能。GitHub 还设想将 Teletype 作为进行 pull requests(PR)的一种方式:开发人员不需要在本地提交一个 PR,而是可以使用 Teletype 进入同一文本编辑器,实时地处理问题。

在 Atom 1.22 上可以通过 Install 面板来安装 Teletype。除此之外,还可以通过在命令行运行 apm install teletype 来安装 Teletype。


Atom支持实时协作编程了

除了当前就可以用的 Teletype 之外,微软的 Visual Studio Code 也在进行类似功能的开发,在它的博文里介绍道,被叫做 Live Share 的新功能不但允许协同编写代码,还能协同 Debug. 该功能目前仍处于内测中。

参考来源:

https://qconsf.com/sf2017/presentation/real-time-collaborative-editing-crdts

https://github.com/blog/2468-introducing-teletype-for-atom-code-collaboratively-in-real-time

https://code.visualstudio.com/blogs/2017/11/15/live-share

前端之巅

活动推荐:

2018 年 1 月 11-14 日,AICon 全球人工智能技术大会上,一些大牛将首次分享 AI 在金融、电商、教育、外卖、搜索推荐、人脸识别、自动驾驶、语音交互等领域的最新落地案例,应该能学到不少东西。目前大会 8 折报名倒计时,更多精彩可点击阅读原文详细了解。

以上是关于Atom支持实时协作编程了的主要内容,如果未能解决你的问题,请参考以下文章

行业新闻Atom支持实时协作

Atom文本编辑器支持“实时代码协作”啦

GitHub 的 Atom 新支持“实时代码协作”;Facebook 开源分布式网络路由软件 Open/R

Atom 和 VSCode 同一天发布神器:实时编码分享

杂谈:Atom Teletype 协作代码编辑

markdown编辑器有哪些.哪个比较好用