IDE, functions and list
An Integrated Development Environment is a tool to assist the programmer in building applications or writing scripts.
An IDE includes at least:
- A graphical user interface.
It allows you to select files, set options, launch tasks.
- A source code editor.
- A compiler.
- A link editor.
- An integrated make tool. He sends commands to the compiler and link editor with the source or object files as parameters.
- A debugging tool.
The IDE can be dedicated to a programming language or be multi-languages. In the second case the editor adapts the syntax highlighting to the language, depending on the file extension or user choice.
The NetBeans IDE is like a simple code editor with the source file list on the left and the editing window on the right, but it is actually more sophisticated. It has a built-in syntax checker for supported languages that detects errors, can hide the body of a function to reduce the display, can interface to a database to run the code under test.
And of course has the classic development tools...
To automate again the production of applications, other tools may be incorporated into an IDE:
- Panel for tree of classes and their members. It provides easy access to elements of a program.
- Visual designer. By choosing components in panels,you create an interface by drag and drop.
- Context-sensitive help. Provides the meaning of each pointed out item and how to use it.
- Version manager. Maintains versions of the source code.
- Profiler. Helps to optimize the code and to improve its performance.
The editor itself may also have extended features such as auto-completion, syntax checking.
List of free IDEs
There are all cross-languages IDEs. See at the list of languages on the home page of this programming section for specialized tools.
- NetBeans. Java, PHP, C++ applications. Multi-plateforms.
- Eclipse. Multi-plateforms, written in Java.
- Kdevelop. An IDE dedicated to C++ applications for the KDE environment. Linux.
- Visual Studio Express. C++, C#, Basic. Windows.
- Aptana. For Web Applications. (Windows/Mac/Linux).
- XCode. For MacOS.