Why should I use IDE? [shut down]

In another question, Mark spoke highly of the IDE, said "some people still do not know" why "they should use a ......." As the use vim people to program and use vim or in most / all my colleagues emacs environmental work in all work, what are the advantages of IDE? Why do I use one?

I'm sure this problem for some people is a controversial, I am not interested in a flame war begin, so please answer the reasons IDE-based approach superior you think . I am not interested to hear why I should not use IDE; I have not used. I am interested to hear "the other side of the fence", so to speak.

If you think the IDE may be appropriate for some types of work and not suitable for other work, I would like to know why.


#1st Floor

Save development time
by providing an integrated debugging, IntelliSense features that make life easier.

There are many, but would recommend using one of them is obvious.


#2nd Floor

Code completion. Explore the code of great help.


#3rd floor

IDE has the following advantages:

  • Compile usually "real-time", which means no longer need to switch to the command line to compile
  • Debugging is integrated, debugging features in the IDE has meant stepping actually used your-place editor to visually show what code is executed
  • IDE usually have more semantic knowledge of the language you are using, and can show you possible problems while typing. Reconstruction is more powerful than the "search and replace."

There are more, maybe you should try it.


#4th floor

It really depends on the language you use, but in C # and Java, I found the IDE benefit:

  • Quick navigation to type without having to worry about namespaces, projects, etc.
  • Regarded by members to members of the hyperlink navigation
  • When you can not remember the names of all members, auto-complete
  • Automatic code generation
  • Reconstruction (large-scale)
  • Organization introduced (automatically add appropriate introduced in Java instructions using C #)
  • Warn you input (ie some errors do not even compile cycle)
  • Hover over something to view the document
  • In a useful way while preserving the file on the screen, error / warning / console view / testing unit and the source code
  • Ease of running unit tests from the same window
  • Integrated debugging
  • Integrated source control
  • Abnormal position error details to the compiler error or run direct navigation.
  • and many more!

All this saves time. They are things I can do it manually, but more painful: I prefer to do the coding.


#5th Floor

Different people may have different reasons. For me, these are the advantages.

  1. Provide integrated feel to the project. For example, I will contain all relevant project files in a single view.
  2. The code provides higher productivity
    1. Syntax highlighting
    2. Reference rally
    3. IntelliSense
    4. Centralized view of the database and related UI files.
    5. Debugging functions

At the end of the day it helps me write faster than I do in Notepad or WordPad code. This is the IDE I prefer a good reason.


#6th floor

The short answer to why I am using an IDE is laziness.

I'm a lazy soul, when there is a simple way, he does not like to do things the hard way. IDE to make life easier, it attracts us lazy people.

When I entered the code, the code automatically check the validity of the IDE, I can highlight a method and press F1 to get help, right-click and select "Go to Definition" jump directly to a defined position. I clicked on a button to start the application automatically connected to the debugger. So the list continues. All the things that developers do daily are concentrated under one roof.

Without using the IDE. It is not more difficult to work.


#7th floor

I like IDE, because it offers a lot of features in my fingertips. Edit / compile / visibility of the project files in the IDE everything I valued. I now use Visual Studio, but in a previous life I use SlickEdit, I find that it makes the development process does not use it more streamlined than me.


Building # 8

IDE is substantially:

  • Editor with code completion, refactoring and documentation
  • Debugger
  • File System Resource Manager
  • SCMS client
  • Building tools

All in one package.

You can use a separate tool or just a great programmable editor and extra tools to accomplish all of these (and more), such as Emacs (Vim is true, but it has fewer IDEability IMO).

If you find yourself in a utility and the next can be integrated into the environment between the utilities to switch a lot, or if you are missing some of the features listed here (and more complete in other posts), it may be time to transfer to IDE (or to enhance the reliability of the environment by adding macros, or not. If you use multiple programs to build its own "IDE" (in the sense mentioned above), there is no need to transfer the actual IDE.


House # 9

When the "text editor" is really emacs when I think to do the classic "text editor and console window and the IDE" it is not fair. Most typical features of the IDE are in emacs. Perhaps they even originated in there, mainly modern IDE interface improvements / simplification.

This means that for the original question, the answer is not so clear. It depends on the site in question people how to use emacs, if they mainly use it as a text editor, or they go all out and use custom scripts, command-related learning mode to learn the code mark, and so on.


#10th floor

Solar eclipse:

Code highlighting, in the background compiler, pointed out my mistake, because I continue.

Integration with javadoc, use ctrl-Space recommended variable name.

When I compiled, I get an error. I can double-click an error, it displays the corresponding line.

Fully integrated with JUnit, ctrl-F11 runs the test, told me that the test failed. If there is an exception in the output window, I can double-click a row, and then took me to the line failure. Not only that, ctrl-F11 ensure that prior to running the test compilation of all content (which means I'll never forget to do this).

Integration with ants. A command for building and deploying applications.

Integration with debuggers, including remote debugging Web server.

FANTASTIC refactoring tools, searching for some reference code. Help me understand the impact of change.

All in all, it makes me more productive.


House # 11

When deciding whether to use IDE, need only consider one thing, and that is whether it will improve your work efficiency.

Brief questions in such a short answer :)


House # 12

I can consider several reasons for using the IDE:

  • Comprehensive help is the most popular.
  • With Visual Studio's built-in preview Refactor
  • IntelliSense , syntax highlighting, ease of navigation of large projects, integration and commissioning (although I know that the use of plug-ins, you can use Emacs and Vim get a lot of this).
  • In addition, I think IDE now has a wider user base, they may be more people to develop plug-ins, but I could be wrong.

Frankly, I like my mouse. When I use a plain text editor, it will become lonely.


House # 13

It will certainly lead to increase my productivity. I even on Vista in Visual Studio to write Linux applications, and then use them to build a Linux virtual machine.

You do not have to remember all the parameters of the function or method call, once you start typing it, IDE will show you the required parameters. You can use a wizard to set up the project properties, the compiler options. You can search the contents of the entire project, not just the current document or file in the folder. If the compiler errors, double-click it, it will take you to the offending line.

Integration tools, such as a model editor, and connecting an external database browsing, management code set "fragment", the GUI modeling tools. All of which can be individually, but in the same development environment to save all of which can save a lot of time and make the development process more effectively flow.


House # 14

There is a clear dividing line between I'm not sure a text editor and IDE. At one end of the scale you have similar notebook at the other end has the best modern IDE, but the middle there are a lot of things. Most text editors have syntax highlighting; editor for programmers usually have a variety of other functions, such as navigation and simple code automatically. Emacs can even make your integrated debugger. IDE even a decade ago have far fewer features to help programmers function, but not now expect for a serious text editor.


House # 15

Much depends on what you are doing and what you are doing language. Personally, I prefer not to use IDE (or "my IDE includes three xterms run vim, and run a database client, run a database client bash prompt or tailing logs" depending on you for my most of the work is defined extent of "IDE", but if I find myself working on a platform native GUI, then I will find a suitable language IDE instant - IMO, IDE and graphical form editor is clearly mutually made.


House # 16

According to developers trying to accomplish, IDE may be a "superior" option.

Text Editor can be "superior" because generally directed to an IDE (or a small selection) language.

If the developers will spend most of the time a single language or language related to "cluster" (such as C # and T-SQL), then an operating system by GUI design, debugging, IntelliSense, such as refactoring tools provide a good IDE can be very compelling. For example, if you spend most of the time working in VB.NET, may occasionally use some T-SQL, then in a Windows environment, if you do not look at Visual Studio or similar IDE, it would be very foolish.

I have no prejudice against those who favorite IDE or text editor, if learned well can be both very productive and useful!


House # 17

For me, IDE is better because it allows faster code navigation, if you have something to implement the idea, which is very important. Assuming you do not use IDE, destination need more time to arrive. Your idea may be interrupted more frequently. This means that you must press more clicks / More button. People must pay more attention to how to implement the ideas of things. Of course, you can also write it down, but it must be switched between design and implementation. In addition, GUI designers are very different. If you do this manually, it may take longer.


House # 18

As the author of your reply highlighted in the question, and admitted a little late, I have to say, in the many reasons listed in the efficiency of professional developers is one of the most respected skills.

By productivity, I mean to be able to do their jobs effectively the best results. IDE to enable this feature on many levels. Emacs I am not an expert, but I suspect it is the lack of any major function of IDE.

Design, documentation, tracking, development, build, analysis, deployment and maintenance is the key stepping stone to enterprise applications, and can be done in the IDE.

If you have a choice, why you would not use such a powerful thing?

As an experiment, so that their use IDE, such as 30 days, and see how you feel. I am very happy to read your views on this experience.


House # 19

I think this is mainly with the scope of awareness about the developer. The IDE provides developers working environment macro view. You can simultaneously view class hierarchies, referenced resources, database schemas, SDK help references and so on. Because many things are affected, it affects your keystrokes, as well as architecture and architecture intersection widening, it is becoming increasingly difficult. Only one code from a working island.

OTOH, "just me and vim and the man pages" gives me a leaner microscopic - but intense and precise - view. If I have a good design, good partition, cohesive highly sparse coupled code libraries, build one language, you can use a set of static libraries, instead of the typical cases, especially when the size of the development team grow and reshape when the code structure, it is possible. Over time, distance, and personal preferences.

I am currently engaged in Flex and .NET projects. A better thing about Flex is that the way things are seldom achieved the standard - to extract data from the database, open / close / read / write files, etc. (but I'm using Flex Builder / Eclipse IDE) - Like as a typical example heavyweight VS, because I'm still learning the basics and I need training wheels. Once I have full confidence in their model, I want to be able to return to vim. ) In this view, I can do what I need to do a professional job by knowing some very good things.

OTOH, I can not imagine using .NET to achieve this, because I hope to keep expanding views and metastasis. Much less conceptual integrity, consistency and a few developers on the project within a few months is much lower - but IDE support this, might encourage it. Therefore, developers really need (and can be more easily) more fully understand the contents. This also helps them to answer a higher percentage on (or even understand) StackOverflow question. That we can have a deeper knowledge base. We can respond to a wide variety of advertising for help.

Things may be in both directions too much. Perhaps only the "Edit only" scope, like "If you only have a hammer, everything looks like a nail." The method of using the IDE, whether you want to be fastened together, you can select various fasteners and tools Range - Parts / hammer, screw / screwdriver, bolts / wrench, adhesives / glue gun / clamp, a magnet has been at your fingertips (with a wizard to help you get started).


House # 20

I use Emacs as the primary development environment and Mail / News about 10 years (1994-2004). When I force myself to learn Java in 2004, I found a powerful IDE, so I was surprised that I really like IDE ( IntelliJ IDEA ).

I will not discuss specific reasons, because there has been mentioned a lot - just remember that different people like different functions. I and a colleague used the same IDE, the two of us use only a small part of the function, we do not like the way the use of the IDE (but we all like IDE itself).

However, I want to focus on is associated with Emacs / Vim environment in comparison, IDE has an advantage: you spend less time to install / configure the required functions.

Use Wing IDE (for Python), and I'm ready to start developing 15-20 minutes after installation. I do not know how many hours I need to get my run and run Emacs / Vim function. :)


House # 21

I do not understand what you are asking. You ask, "Should I use IDE instead ......" but I do not understand what the alternative is - Vim and Emacs can perform many functions any IDE will provide you. The only aspect they do not handle large IDE may be the UI designer. Then your problem boils down to a simple "What should I use IDE", and provide parameters for Vim and Emacs is a simple field.


House # 22

Do not think it is exclusive. Using the IDE can reap the benefits it brings, and switch to vim / preferred text editor when you need serious attention.

I looked for reconstruction and browsing, debugging, and do figure out what 's better IDE. Then complete the small things in the IDE, I flip bulky thing to do the job.


House # 23

In addition to the other answers, I would like IDE's development capabilities and Vim's editing capabilities combined with, for example ViPlugin for the Eclipse .


House # 24

GUI-based IDE (such as Visual Studio and Eclipse) and text-based IDE (such as Emacs or vim) compared with the following advantages because they have the following display:

  • GUI designed for real-time editing and WYSIWYG preview
  • Efficient property editor (e.g., using a GUI for the palette of colors, including positioning gradient stop, etc.)
  • Code outlines, file interrelationships and other graphic description
  • More efficient use of screen space to display breakpoints, bookmarks, errors, etc.
  • Use OS and other applications better drag and drop support
  • Comprehensive edit drawings, images, 3D models, etc.
  • Display and edit database model

Basically use GUI-based IDE, you can get more useful information on the screen immediately, as you can easily view / graphic editing application as part of the text portion.

As developers to experience one of the coolest things that some of the data editing method for calculating and graphically display real-time output code in another window, as users will see it when you run the same application. Now that is a WYSIWYG editor!

You can add features such as code completion and refactoring such as Emacs and vim text-based IDE with the passage of time, so in the long run, their main limitation is based on the model display text.


House # 25

The main reason I use is when the code more than 100 files.

Although ctags can do the job, but some IDE can easily navigate files very quickly.

When you have a lot of work to do, it can save time.


House # 26

For me, it's just the GUI version of what we have done in the past good times end all. I always agree IDE is not very favorable, because they hide a lot of things, especially things about the link, but they have a significant advantage in some cases, such as certain development platforms, such as Qt.

Some similar IDE's visual effects even seem to parse the code you type the code, and detect errors before you compile: it seems that only IDE can work closely in order to detect the type of problem in the immediate source of logic and compiler.

I think there is IDE / command-line flame war madness to answer simply because from the perspective of standardization, C / C ++ executable building process is not very good, and the D language is different; each platform in its own way deal compile / link / etc, so in order to reduce the trouble they make the IDE.

From your point of view, using the command line might be easier, if only one compiler with standard options, it would have been very easy, but the fact is that C / C ++ is very flexible, so in the end, all according to their own platform the way to do it, so do not waste IDE explain how to do it.

If you can learn how to communicate with the kernel executable file, or you have any knowledge of the compiler design, then there could be a way to use the correct command line, but I doubt that you have.

Microsoft or Apple, they are evil and must propose a direct way to build applications without the need to enter the details, and due to build applications directly depends on the architecture of the operating system, so it is not nearly as "standard" as the command line yes.

Simple, powerful and complex applications, you do not want in-depth study of its effects -> IDE, little software or simple system software design -> command line. Of course, in addition to those nice library embedded in the Makefile, but that's another story.

In addition, I believe that IDE is used in application delivery with certain things about, ironically, is, GUI interface or directly or have something to bind to the operating system, so the same, it is also suitable for use UI / GUI not know how it works in people, and the people programming system will no longer need it.

IDE is just modern dog feces, but I think that 100 years after the command line still exists.


House # 27

For all my development work, and I used almost exclusively Vim (almost because I am now trying to learn emacs). I think purely intuitive (of course, from GUI) is the main reason that people like to use the IDE. Intuitive and requires little overhead learning tool. The smaller the cost of learning, the more times they complete the work.


House # 28

I look at this from the opposite direction of the problem. I programmed on the land Makefile + Emacs, and only a few pit stops. From my earliest DOS compilers, Microsoft Quick C, I have an IDE to automate. I worked for many years on the Visual C ++ 6.0, when I graduated from Enterprise Java, I worked with Borland JBuilder, and then select the Eclipse, which is very effective for me.

In my initial self-study, and now university career, I gradually learned that any major software development done in the IDE will be counterproductive. I say this because most of the IDE you want to be able to their job-specific I-control-how-the- world-works style. You have the project to slice and dice their way. You can use the strange dialog management project build. Complex dependencies between most IDE project management is poor, and the dependency is difficult to work 100%. Unless I made a Clean / Rebuild All, or else I have been in the IDE can not generate a working version of the code. Finally, there is a few ways to clean your software in other environments such as IDE in QA or Production moved from development. This is usually a carnival lets you build all deployment unit, or you have some IDE vendor to provide you with clumsy tools bundled. But again, the tool usually requires you to project and build the structure in full compliance with its rules - sometimes it does not work on your project requirements.

I learned to conduct large-scale development with the team, if we use the IDE development code and use a command-line scripts written manually complete all the building, then we can be most efficient. (We like Java for the development of Apache Ant.) We found that our script is running from the IDE just click costs or complexity of building automation nightmare, it's easier (and less destructive) alt + tab out to a shell and there run the script.

Manually build modern IDE requires us to miss some of the details, such as background compiler, but the more critical we get: You can live a clean and simple building in multiple environments. All those who talk about quick "one-click build"? We have it. Our build scripts can be called directly by continuous integration system. By continuing to build integrated management allows us to more formally phased migration will deploy the code to a different environment, and when the building was destroyed or checking unit test error codes, knew almost immediately.

In fact, I played the role from within the IDE does not bring much harm to us. Eclipse refactoring tools in intellisense and still completely useful and effective - background compiler is available for use of these tools. Moreover, Eclipse slices unique project has become a very good way, in a way that everyone can understand the spirit of the decomposition of our problem sets (although still a bit tedious for my taste). I think one of the most important things about Eclipse is the excellent SCM integration, which is to allow the development team to become so pleasant reasons. We use Subversion + Eclipse, which is very efficient and very easy to train our staff to become experts.


House # 29

IntelliSense , integrated debugger and the Immediate window to make my work more efficient ( Visual Studio 2008 ). With everything at my fingertips, I can keep the vast majority of the huge project when writing code. Microsoft may continue to give up their operating system, but Visual Studio is one of the best ever products.


House # 30

IDE allows a person faster and easier to work ... I noticed that I spent a lot of time to navigate code in a simple text editor ...

In a good IDE, if IDE support function to jump to previous editing position, converted to variable, that time will be shortened ...... In addition, a good IDE will shorten try a different language functions and projects time, as a start-up time can be very small.

Original articles published 0 · won praise 2 · views 10000 +

Guess you like

Origin blog.csdn.net/asdfgh0077/article/details/104260313