Translation(s): English - Français

(!) ?Discussion


Disambiguation : This page is about Integrated development environment.
For Integrated Drive Electronics, see IDE.

Programmer's Editors and Integrated Development/Debugging Environments

An IDE consists of an editor window with additional menus to compile, execute, single step and display variables of a program. This makes software development easier than using an editor, invoking the compiler, running the program, running the editor again, adding print statements, and compiling again until you find out what's wrong in your code.

In an IDE, the developer types in the code (or imports it from existing projects), presses one button to save and compile, presses another button to debug, check variables and single step through the code to find bugs. A popular DOS IDE was Borland's Turbo/C++.

There are a number of excellent IDEs that will run on Debian; the "IDEs" section of the Debian Wiki ProgrammingApplication page includes a list, including basic descriptions and links to their homepages and installation instructions.

On the other hand, in the Unix / Linux world, some prefer TheUnixWay: the use of small tools that do one thing but do it well, chained together to make large toolsets.

Development via TheUnixWay consists of the following:

Programmer's Editors

Compilers

Interpreted Scripting Languages

Documentation

Due to the standards-based nature of Free Software, one can find applicable documentation on these tools from anywhere, not just from the vendor who sold or distributed them. As well, one can expect this documentation to change when the standards change, not at the whim of the vendor.

Development In A Free Software Environment

Do One Thing, But Do it Well

Due to TheUnixWay's tools having been developed in the way they were, there are numerous ways in which they can be used. Rapid prototyping with any number of scripting languages can help one flesh out the overall application. Plugging in other tools to add GUI interfaces on top can help in perfecting user interface elements. Finally, compiled languages can implement the final design in cases where utmost performance is critical.

Due to TheUnixWay's way of doing things, there's lots of wiggle room in the above. Vi and emacs can call compilers from the editor interface. Both can supply syntax based color highlighting of code elements, as well as interactive syntax checking of numerous file formats. Perl includes it's own debugger and compiler. "TK" modules are provided for many scripting languages to implement GUI elements. All (or most) of the scripting languages have some construct whereby almost any Unix tool can be called on from within the script.

Unix programmers are not limited to the libraries supplied by their commercial vendors.