Integrated development environments (IDEs)
Features of an IDE
An integrated development environment (IDE) brings together tools for writing, testing and running programs. Its editor helps write code, for example with syntax highlighting and auto-completion. Error diagnostics highlight a likely problem, such as a misspelled variable; a debugger can help locate a fault while a program runs. The run-time environment lets a programmer run and test the program. A translator, such as a compiler or interpreter, converts the code so it can execute.
For example, a learner can write Python in an IDE, run it, inspect an error message and correct the code without changing applications.
Key terms
What each tool is for
| Tool | What it does | How it helps the programmer |
|---|---|---|
| Editor | Where code is typed, with line numbers, syntax highlighting, automatic indentation and auto-completion | Keywords stand out, so typing mistakes are easier to spot; less typing |
| Error diagnostics | Reports errors with a message and the line number, and may underline problems as you type | Errors are found and fixed quickly |
| Run-time environment | Runs the program inside the IDE, with a window for its input and output | The program can be tested straight away |
| Translator | Compiles or interprets the code | Turns the code into a form the computer can run |
An IDE puts all of these in one place, so a programmer can write, run and fix a program without switching between separate tools.
Finding errors
A syntax error breaks the rules of the language, such as a missing bracket. The translator finds it, and the error diagnostics report it with its line number.
A logic error lets the program run but gives the wrong result, such as using < where <= was needed. Nothing reports it, so the programmer has to find it. Many IDEs include debugging tools for this:
- a breakpoint pauses the program at a chosen line
- stepping runs it one line at a time
- watching variables shows their values as they change
Comparing those values with the ones you expect, as you would in a trace table, shows the line where things go wrong.
Exam tip
Name the feature and say how it helps: 'auto-completion suggests names as you type, so there are fewer spelling mistakes'.