Sublime Text VS Visual Studio Code VS Atom 性能测试

本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划

说到文本编辑器,我已经使用Sublime Text大约3年了。一两年前我试过Atom,其活跃的社区给我留下了深刻的印象(GitHub!我喜欢GitHub)。UI方面特别吸引我。我坚守Sublime Text的原因在于性能:Atom很慢,即使在Atom 1.0发布之后。

这些天,因为发现有Visual Studio Code,所以就去谷歌搜索“Sublime Text vs Atom 2016”,想要看看Atom是否有明显的改进。Visual Studio也是使用Web技术,像Atom构建的,但评论说它更快。所以我想做一个测试来看看它们的性能差异。

编辑器版本

编辑器 版本
Sublime Text 3 beta, build 3126
Atom 1.12.7
Visual Studio Code 1.8.1
TextEdit 1.12 (329)

方法

我在带有Touch BarMacBook Pro 2016 13英寸(2.9 GHz Intel Core i5 CPU以及8 GB 2133 MHz LPDDR3 RAM运行macOS Sierra 10.12.2)上进行测试。所有我可以看到的程序都已经关闭。macOS的常备TextEdit用作参考。

启动时间

每个编辑器都是通过点击图标从Dock启动的。我记录了单击图标和满载第一个窗口之间的时间。

窗口打开时间

首先启动每个编辑器,随后关闭所有窗口。我将记录从Dock中的菜单(或其等同物)中点击“New Window”和满载第一个窗口之间的时间。

文件打开时间

首先启动每个编辑器,打开一个窗口。文件已从Finder拖动到其窗口。我记录了文件被释放和文件被满载时刻之间的时间。

文件生成

通过以下Python脚本生成包含10k,100k,1m,10m行的四个文件。文件大小分别为370KB,3.7MB,37MB和370MB。

template = '''

#include <iostream>

int main() {
    return 0;
}

/*
%s
*/
'''

string = 'abcdefghijklmnopqrstuvwxyz1234567890\n'

with open('test-10k.cpp', 'w') as f:
    f.write(template % (string * 10000,))

with open('test-100k.cpp', 'w') as f:
    f.write(template % (string * 100000,))

with open('test-1m.cpp', 'w') as f:
    f.write(template % (string * 1000000,))

with open('test-10m.cpp', 'w') as f:
    f.write(template % (string * 10000000,))

文件打开时间

首先启动每个编辑器并加载文件。我使用Activity Monitor来添加所有进程使用的内存。使用的文件是在“文件打开时间”测试中370KB的那个。

结果

启动时间

TextEdit在启动时不打开编辑窗口,而是显示文件选择器窗口。

窗口打开时间

注:TextEdit在打开窗口时有一个弹出动画,这使它慢了一点。

文件打开时间

注:

  • Atom无法打开“1m行”文件,并在大约40秒后报告“崩溃”。
  • Visual Studio Code不允许我打开“10m 行”文件说“very big”。
  • Atom无法在打开“100k行”文件时保持语法高亮。
  • Visual Studio Code无法在打开“1m行”文件时保持语法高亮。
  • TextEdit没有语法高亮功能。
  • TextEdit在打开文件时有一个弹出动画,这减慢了一点速度。

内存使用情况

结论

Atom和Visual Studio Code执行显然比Sublime Text和TextEdit更糟:启动和打开窗口略慢,显而易见占用了更多的RAM。

Visual Studio Code在打开文件和RAM使用方面具有优于Atom的优势。它可以处理更大的文件并且处理起来比Atom更快。当我测试3.7MB文件时,它在1秒内打开了,而Atom花了超过2秒。

Sublime Text仍然是速度王,Visual Studio Code第二,Atom最后。

题外话:从这个月开始,我打算使用Visual Studio Code来替换Sublime Text,因为我感觉它似乎更有意思。

译文链接:http://www.codeceo.com/article/sublime-text-vs-visual-studio-code-vs-atom.html
英文原文:Sublime Text vs Visual Studio Code vs Atom Performance Test
翻译作者:码农网 – 小峰
转载必须在正文中标注并保留原文链接、译文链接和译者等信息。]