在另一个问题中,Mark高度评价了ide,说“有些人仍然不知道”为什么“他们应该使用一个……”。作为一个使用vim进行编程的人,并且在大多数/所有同事都使用vim或emacs进行所有工作的环境中工作的人,ide的优势是什么?我为什么要用它?

我相信这对一些人来说是一个棘手的问题,我对开始一场论战不感兴趣,所以请只回复你认为基于ide的方法更好的原因。我对听到为什么我不应该使用IDE不感兴趣;我已经不用了。可以这么说,我感兴趣的是听取“栅栏的另一边”的意见。

如果您认为ide可能适合某些类型的工作,但不适合其他类型的工作,我也很想知道为什么。


当前回答

IDE可能是一个“优越”的选择,这取决于开发人员试图实现的目标。

文本编辑器可能更“优越”,因为ide通常面向一种(或一小部分)语言。

如果一个开发人员大部分时间都在单一语言或相关语言的“集群”(如c#和T-SQL)上,在一个操作系统中,那么一个好的IDE所提供的GUI设计、调试、智能感知、重构等工具就会非常引人注目。例如,如果你大部分时间都在VB上工作。NET,在Windows环境中可能偶尔会用到一点T-SQL,那么如果你不考虑Visual Studio或类似的IDE,那就太愚蠢了。

我对那些喜欢ide或文本编辑器的人没有偏见,如果学得好,两者都可以非常有效和有用!

其他回答

我可以想到使用IDE的几个原因:

综合帮助是最受欢迎的。 内置的重构与Visual Studio预览 智能感知,语法高亮显示,大型项目的导航方便,集成调试等等(尽管我知道通过插件你可能可以在Emacs和Vim中得到很多)。 另外,我认为现在的ide有更广泛的用户基础,可能有更多的人为它们开发插件,但我可能错了。

坦白说,我喜欢我的鼠标。当我使用纯文本编辑器时,它变得很孤独。

对我来说,这肯定会提高我的工作效率。我甚至在Vista上的Visual Studio中编写Linux应用程序,然后使用Linux虚拟机来构建它们。

你不需要记住函数或方法调用的所有参数,一旦你开始输入它,IDE就会告诉你需要什么参数。您可以使用向导来设置项目属性、编译器选项等。您可以在整个项目中搜索内容,而不仅仅是当前文档或文件夹中的文件。如果你得到一个编译器错误,双击它,它会直接把你带到有问题的行。

集成了模型编辑器、连接和浏览外部数据库、管理代码“片段”集合、GUI建模工具等工具。所有这些东西都可以单独使用,但是将它们都放在同一个开发环境中可以节省大量时间,并使开发过程更有效地进行。

It's really VERY simple. But this answer is a bit of a paradox in that I am discussing something only EMBEDDED level developers ever encounter. The reason this is an odd view is that frankly when I was doing embedded work (the brief time I was making any real money) an IDE would be down right STRANGE and most of your coworkers would wonder why you can't remember enough about SNMP/ASN.1 or whatever protocol you were dealing with to just /do your job/. BUT you can NOT, as far as I know, do a graphical simulation of what your microcontroller is doing in something like /real time/ without an "IDE".

作为你在你的问题中强调的回答的作者,并且承认这一点有点晚了,我不得不说,在列出的许多原因中,专业开发人员的生产力是最受重视的技能之一。

我所说的生产力是指高效地完成工作并取得最佳结果的能力。ide在许多级别上都支持这一点。我不是Emacs专家,但我怀疑它缺乏主要ide的任何特性。

设计、文档编制、跟踪、开发、构建、分析、部署和维护,这些企业应用程序中的关键步骤都可以在IDE中完成。

如果你有选择,为什么不用这么强大的东西呢?

作为实验,让自己使用一个IDE 30天,然后看看感觉如何。我很想听听你对这次经历的看法。

简单地说,IDE提供了比简单编辑器更省时的特性。