IDE

An integrated development environment (IDE) is an application used to create software. An IDE can often support different languages.

IDEs have a number of different tools and functions that assist a developer in the creation of software.

Code editor

The environment where the user can write code is called the shell. The code editor is a text edit area that allows developers to write, edit and save a document of code. It has features that assist with the writing and editing of code. These include:

  • Auto-completion (or code completion). This is designed to save time while writing code. As you start to type the first part of a function, it suggests or completes the function and any arguments or variables.
  • Bracket matching. This is used for languages that use pairs of brackets to mark out blocks of code. It allows the code to be read and understood more quickly. If you forget to close a bracket while writing, coloured sections may help you to detect missing brackets.
  • Syntax checks. This recognises incorrect use of syntax and highlights any errors.

IDEs have a runtime environment. This means that you can execute the program one step at a time. This is useful to test that the code is working line by line before creating the final complete program.

Other IDE tools

The IDE also includes several tools to automate and speed up processes.

  • Translator. This compiles or interprets the code.
  • Auto documentation. This explains the function and purpose of the code, eg by noting the modules and variables used, and its expected behaviour, and collates this into a text file that can be used by other developers to understand how and why the code was created.
  • Libraries. These provide functions that are not included in the core part of the programming language. These functions can be imported and used at the start of the program code. For example, in Python the Turtle Graphics library provides access to some simple drawing and graphics tools.
  • Build automation. These tools save time by automatically doing the processes that would otherwise be done by hand. These could include testing or compiling. These tools are extremely useful when a program has many thousands of lines of code. They improve the quality of the software, minimising bad software builds as well as saving time and money.
  • Debugger. This is a program within the IDE that is used to detect errors. If the debugger detects errors, it may suggest what the type of error is and what line it is on.
Glossary
  1. algorithm A sequence of logical instructions for carrying out a task. In computing, algorithms are needed to design computer programs.
  2. application A software program that allows a user to perform a specific task.
  3. argument A value that is acted on in a computer program function.
  4. assembly code A low-level programming language closely related to machine language. Also called assembly language.
  5. automated Turning a set of manual steps into an electronic operation that requires no human input.
  6. binary A number system that contains two digits, 0 and 1. Also known as base 2.
  7. browser An application used to view web pages, eg Internet Explorer or Google Chrome.
  8. bug An error in a program that causes it to fail.
  9. client The computer on a network that request data from a server.
  10. compilation Process of translating source code into object code.
  11. concatenation The joining together of two or more strings or substrings.
  12. CPU Central processing unit - the brain of the computer that processes program instructions. Also called a microprocessor.
  13. debug The process of finding and correcting programming errors.
  14. dynamic In computing, web pages that respond to new information from the user or a backend database are dynamic.
  15. emulate To behave like or imitate another system.
  16. execute To run a computer program.
  17. high-level language A computer programming language used to write programs. They need to be translated into machine code through a compiler, interpreter or assembler.
  18. IDE Integrated development environment - a piece of software used to write computer programs.
  19. instruction A single action that can be performed by a computer processor.
  20. integer A whole number - in computing, a data type which represents signed (positive) or unsigned (negative) whole numbers.
  21. machine code Also called object-code, this is low-level code that represents how computer hardware and CPUs understand instructions. It is represented by binary numbers.
  22. memory The part of a computer that stores data.
  23. operating system The software that runs a computer.
  24. Python A high-level programming language.
  25. runtime The period when a computer program is executing or running.
  26. scripting A type of computer programming which is executed in runtime, often used for web applications.
  27. semantic error An error in the logic of a computer program producing unexpected results.
  28. server A computer that holds data to be shared with other computers. A web server stores and shares websites. Servers require server software.
  29. software The programs, applications and data in a computer system. Any parts of a computer system that aren't physical.
  30. source code The written code that creates a computer program.
  31. string A sequence of characters often stored as a variable in a computer program.
  32. syntax Rules governing how to write statements in a programming language.
  33. testing An important part of computer programming which involves checking a program for errors.
  34. text file A computer file type used to store unformatted text.
  35. translator Program translators convert program code into machine code to be executed by the CPU. There are three types of translator: interpreter, compiler and assembler.
  36. variable In a computer program, this is a memory location where values are stored.