程序员与编辑器的那些事

世界上有三种程序员,一种用 Emacs,一种用 Vi,剩下的那部分多半都是在用各类 IDE,事实上现在用 IDE 的程序员可能占据了多数。

编程语言排行榜第一的 Java 的初学者很多都是从 IDE 开始的。相比通用的编辑器,Java 的 IDE 确实提供了更高的效率。

在 Java 刚诞生的年代,它的第一个 IDE 是 Symantec 开发的 Visual Café,它几乎是以席卷市场的姿势迅速占据了 Java 开发工具第一名的地位。后来同时期的竞争者还有 IBM 的 Visual Age For Java,至于 Borland 的 JBuilder 几乎是最后起跑的参赛者。

不过无论是编辑器也好,IDE 也罢,都是工具。而工具是用来放大你的才干,提升你的效率的。在我眼中,工具分成两派:

  • ·Default
  • ·Preference

Default 指工具背后的程序观能提供足够好的默认功能,绝大部分时候(99%)你只需要使用工具提供的默认功能,而默认的功能包括一些品味性的选取(比如:颜色、背景、字体)都是开发工具的人眼中最合适的选择。

Preference 则是随意的提供一些默认功能,然后提供极强的可定制化和可扩展性,让用户按照自己的偏好去定制使用。

Apple 大部分的软硬件产品反映的都是 Default 背后的程序观,而 Linux/Unix 世界大部分的软件都反映了 Preference 的程序观。而应用到编辑器,我自己则一直选择符合 Default 程序观的产品,因为我对用好工具去解决面临的问题的兴趣超过去折腾工具本身。

没 有完全不用 IDE 的 Java 程序员,但我知道一个不太用 IDE 的 Java 程序员——Joshua Bloch。他是一个著名的 Java 程序员,JDK 集合框架和多个其他库的编写者,他对编辑器或工具的看法是:“因为我是个老家伙了,Emacs 的快捷键已经长在我的脑袋里了。”,所以他习惯用 Emacs 来自己写一些小程序或库。即使这位著名程序员已经对Emacs 的快捷键熟悉至此,但对一些需要多人合作的大东西,还得求助于现代 IDE 的帮助,比如:Intellij IDEA。

[ad w=300 f=left]现代 IDE 尝试集成太多功能,把编译、调试、打包、运行集于一身,在方便的同时,也使得 IDE 变得越来越笨重。用好工具的诀窍就是搞清楚工具背后的核心理念以及搞清楚我到底为什么必须用这个工具,而不是工具提供了什么我就去用。

加载余下内容▼

相关文章:

;