The role of an Integrated Development Environment (IDE) is that it is a software application that provides programmers with facilities/tools to develop software/computer programs and also helps them to debug programs.
It is a text editor, debugger and translator all-in-one.
An IDE can be specific to one programming language or may be used with multiple languages
An IDE can also be specific to a particular OS which is an important consideration if the application being developed is intended for an end user with a specific OC like Android or iOS
An example of an IDE is shown on the left.
There are a range of facilities that an IDE can provide a programmer.
This allows a programmer to enter and edit source code/annotation.
A text editor can assist in writing software code with features such as syntax highlighting with visual cues, providing language specific auto-completion, and checking for bugs as code is being written.
Automatic formatting
Correctly indents code
Automatic line numbers
Helps the programmer locate errors
Automatic Colour Coding
Changes key words, literals and annotation to different colours
Linker
This is a program which allows previously compiled code, from software libraries, to be linked together to produce a single executable program. .
Loader
This is a program which loads previously compiled code into memory allowing a program to execute
Debugger
This is a program which helps locate, identify and rectify errors in a program.
The following IDE tools can be used to assist in the debugging process would be the variable watch, compiler and single-stepping.
Syntax error detection
Highlighting syntax errors before code is translated
Trace
This is a facility which displays the order in which the lines of a program are executed, and possibly the values of variables as the program is being run
This is a facility which displays the current value of any variable.
The value can be 'watched' as the program code is single-stepped to see the effects of the code on the variable.
Alternatively a variable watch may be set, which will interrupt the program flow if the watched variable reaches a specified value
Break Point
This is a facility which interrupts a program on a specific line of code.
This allows the programmer to compare the values of variables against expected values.
The program code can then usually be executed one line at a time from the breakpoint. This is called single-stepping.
Variable watch displays the current value of any variable. The value can be 'watched' as the program code is single stepped to see the effects of the code on the variable.
Context Sensitive Menu
IDE suggests available options
Memory inspector
This is a facility which will display the contents of a section of memory and allows content to be checked for errors.
Threading
Allows user to see threads currently running
Output Window
Allows users to see the runtime outputs of the program
Statement Completion
IDE will complete a statement such as adding an ‘end if’ to an ‘if’ statement
Publisher
facility to package up and deploy program as an easy to install package
Emulator
will provide an emulator to run the code/app so no physical device required
GUI creation
Allows programmer to create a GUI by dragging and dropping controls (buttons, etc...) onto a form.
A utility that automates simple, repeatable tasks as part of creating a local build of the software for use by the developer, like compiling source code into binary code, packaging the binary code and running automated tests.
The translator provided by the IDE provides tools such as the compiler, interpreter, code optimisation and error diagnostics.
Compilation & Interpretation of code
Executes the code that the programmer has written.
Compiler: Translates source code into executable machine code to allow a program to be run. Once compiled, a program can be run at any time.
Interpreter: Translates each line/a single line of source code and executes it as each line of code is run. The conversion process is required for a program to run and is performed each time the program needs to be run.
Code Optimisation
Warning message when variables have been declared but not used.
Error Diagnostics
These are used when a program fails to compile or to run. Error messages are displayed to help the programmer diagnose what has gone wrong
🔴 - I am not confident with this content.
🟠 - I can recall the main points and I have a fair understanding of the content. I can start to apply this to an exam question.
🟢 - I am confident in my understanding and application of this content. I am also able to make connections between key ideas.