一般来说,IDE可以更好的“理解”你的代码。所谓“理解”指的是IDE一般会针对特定的语言进行预编译,从而可以“了解”你的程序。一个好的编译器可以知道你正在写的代码是什么意思。比如在使用你自己定义的一个类的时候,编译器可以列出这个类中的方法和常量。比如你在更改一个局部变量名时,编译器可以智能地将这个局部变量作用范围内的该变量名同时更改。这也就是类似 “代码补全”的功能。
同时,一个IDE可以集成非常多的功能,帮助你方便地进行开发和测试。
而一个好的编辑器,一般是可以帮助你非常高效地处理各种各样的文本。比如非常便捷的快捷键以及宏命令(vim),具有非常好的扩展能力和高效的自定义(emacs),界面非常美观以及代码补全(sublime)。但是再好的编辑器一般也不会集成调试器,以及其他的相关工具,因为它们的定位是 文本编辑器。