项目介绍

Xray 是 Atom 团队正在新开发的一个基于 Electron 的文本编辑器,目前并没有开发完成,正处于试验阶段。Atom 团队利用自己之前开发 Atom 的经验,并将自己新的想法应用于 Xray,经过快速迭代不断验证,希望能够开发出一个高性能、高可扩展、高兼容、跨平台、适用于任何 Web 应用的文本编辑器。

高性能方面:性能被项目团队设为首要特性,项目对于性能的目标还是比较高的,如下图

Atom 编辑器推出后性能方面一直被社区和用户诟病,其中在加载大文件的情况下,性能问题尤为明显,因此 Atom 开发团队希望通过 WebGL 将界面这块进行重新实现。但是他们不希望抛弃 Electron,因为他们相信 Electron 还是开发跨平台可扩展界面最优秀的技术平台。

核心逻辑:Xray 相对于 Atom 最大的变动在于核心逻辑层面将由 Rust 来开发。选择 Rust ,其类型系统、并行能力将会使其整体的架构更轻量,并且可维护性更好。但是 Rust 是一门比较偏冷门的语言,并且目前没有太多的项目对其大规模应用,抛弃 node 使用 Rust,不仅仅对团队整体开发是个挑战,对项目之后面向社区提升了门槛。

Atom 和 Xray:就现有的发展来看,Xray 还没有到一个成熟项目阶段,官方也说了各种试验验证还在进行中,并且需要在各种试验之后才能安排出整体项目的开发时间表。因此 Xray 短中期内还没有能力达到 Atom 接班人的水平,但有一点是可以认识到的,在 Xray 的相关技术达到成熟验证后,Atom 团队必定会将大部分开发精力投入到 Xray 当中去。

从 Xray 的整体架构可以看出与 Atom 还是有比较大的差别,Xray 的定位其实不仅仅是一款简单的编辑器而已,Atom 团队希望将 Xray 打造为一款精致的个人编辑器的同时,还能够成为基于 Github 团队协作的一样强大工具,其架构和设想远大。

关于 Xray 的讨论

编辑器这方面从来不缺话题,编辑器是和广大开发同胞息息相关的伴侣。可能从编程开始,它陪伴您的时间比谁都多,因此有时选一款编辑器不亚于选房选车。对于 Atom 团队正在试验的 Xray 项目知乎上有很多有意思的讨论和观点:https://www.zhihu.com/question/268413089 可以关注并仔细思考一番。

以小编的亲身经历来讲,选什么编辑器取决于您选择什么类型的工作什么类型的岗位,小编从早期 turbo pascal, trubo c 到 vim 后,目前 JetBrains 公司的全家桶一直是我的选择。