Hegel2011的博客

读书 - 工作 - 生活 - 笔记

Atom和Node-Webkit

Atom是Github投入开发的一个新编辑器。 目前只有Mac版,我在mbp上使用之后感觉还可以。基本可以认为是一个结合了Textmate和Vi插件的产物。 比如,看界面很像Textmate,但又有Textmat始终也没有支持的Ctrl-P插件。初步使用下来唯一不满的就是软件包太大,170MB对于一个文本编辑器而言是很大了。毕竟Eclipse这样的IDE也只在200MB的规模。

在使用体验方面,比较起来,和Textmate更接近些,但扩展应该方便很多。而比起vi的话,主要优势在于是GUI的,支持command+s保存,也支持鼠标选取文本,对中文输入而言明显要比 vi更合适。高亮、快捷等简单用用差别并不大,美观度当然都可以配置的不错。

而在昨天,Atom进一步把他们的核心模块开源了,另外提到了他们是基于Node-Webkit 开发的这款工具。

这个组合就让我有点费解了。因为webkit是一个当代浏览器的引擎,safari chrome chromium等都使用了webkit,可以理解webkit就是一个浏览器。而node是指的 Node.js,一个可以在服务器端编写javascript的平台,提供了很多的js库。而这么一个组合,干文本编辑器什么事情?在我开来,文本编辑器应该是很原生的一种应用软件。

仔细阅读了一下Node-Webkit的官方介绍以及一些其他材料,尤其是这篇你所不知道的Node-webkit ,忽然明白了所谓跑起来的Atom,其实就是运行了一个浏览器。只是这个浏览器里面的输入元素都是用HTML5编写的,而这个浏览器就是chromium,chrome的免安装的一个分支的名称。然后Atom又加了很多事件响应处理的注册代码段在里面。整个编辑类似于在线编辑,只是保存是在本地的。也因此,这个东西要往Linux和Windows迁移是轻而易举的。因为chromium和Node.js本来就是跨平台的。

然而,一旦有那么美好的事情,这个世界上就有银弹了。而历史的经验告诉我们,世上是没有银弹的。

Atom之所以在mbp上使用的体验还不错,主要是因为mbp搭载了大内存、ssd硬盘以及性能走在前列的x86处理器,所以并没有。而一旦这些条件不具备,情况就不是那么回事情了。这种类似phonegap,用浏览器来模拟原生应用的最大弱点无疑是性能差以及开销大。因此会有人提出打开大文件的效果不堪想象。
从口味上来讲,个人不太喜欢编辑器也Web化。虽然内存cpu的发展依然迅速,Atom的性能问题可能是可以被硬件性能的提升弥补的,但这种做法还是有其先天的缺陷。

所以,如果是脚本的开发,可能还是要继续用vi编写。如果是输入大量中文的话,Atom可以优先考虑。

Included file 'twitter_sharing.html' not found in _includes directory