Why use IDE

  question, vim

See people around you programming with some IDE tools, such as visual studio or Eclipse, etc., but I think vim or emacs is entirely possible.

I would like to ask you what are the advantages of IDE over traditional classic editor vim(emacs). I don’t want everyone to have a war of words here for IDE and vim(emacs), so I just want people who like IDE to talk about the strength of IDE relative to vim(emacs).

If you think IDE and vim(emacs) play different roles in different occasions, I also welcome your answer.

IDE can provide you with shortcuts to the tedious things you often do. And it has its own optimization for specific language or framework.

For example, when I write Java Code, I often use Eclipse and Intellij to complete refactoring, modify variable names within the scope of a function, find all classes that implement an interface, automatically generate JavaDoc comments, and let it automatically help me analyze annotation such as @Override that can be added, even modify class names and file names at the same time, and move files at the same time when modifying the package where the class is located.

For example, when I write Objective-C, I will use UIBuilder to design xib or storyboard files …

These things, not emacs or vi can’t do, just for a specific language specific features, certainly IDE support is better.

Generality and Speciality cannot have both.

Of course, I usually use vi to write C++ and Python (non-Django) code. My own principle is that tools are not selected. Hammers are used to hammer nails and scissors are used to cut paper. In some cases, scissors can also be used to hammer nails. However, to do a good job, one must first sharpen one’s edge. One must choose the right tools and then use them very well, very well and very well.