Select a course.
arrow_back
2.5 Programming Languages and IDE's
infoWhy this? Professional developers use a range of programming languages and specialist tools to create software efficiently. By learning about translators, compilers, interpreters and IDEs, you gain insight into real-world software development practices.
scheduleWhy now? Understanding these concepts now helps you work more effectively as a programmer and prepares you for further study and careers in computing.
neurologyYou need to know
- High-level programming languages use human-readable statements and abstractions that make programs easier to write, understand and maintain.
- High-level languages are largely independent of a computer’s processor architecture, so the same source code can often be translated for different systems.
- Low-level programming languages use instructions that are closely related to the processor’s instruction set and hardware architecture.
- Low-level languages give programmers direct control over hardware and memory, which can support efficient use of processing time and storage.
- Low-level programs are generally more difficult for humans to read, write, debug and maintain than equivalent high-level programs.
- Programs written in a low-level language are usually processor-specific, so they are less portable between systems with different processor architectures.
- A translator converts source code written by a programmer into machine code that the processor can execute.
- A translator is needed because a processor directly executes machine-code instructions rather than high-level source code.
- A compiler translates an entire source program into machine code before the resulting program is executed.
- A compiler reports detected errors during compilation and does not usually produce an executable program until blocking errors have been corrected.
- Once compiled, an executable can be run repeatedly without translating the source code again, so execution is usually faster than with an interpreter.
- Compiled programs can be distributed without sharing the original source code, although separate versions may be needed for different operating systems or processor architectures.
- An interpreter translates and executes source code one statement at a time while the program is running.
- An interpreter normally stops when it reaches an error, which makes it easier to locate and test individual faulty statements.
- Interpreted programs require the source code and a suitable interpreter each time they run, so they are generally slower than compiled programs.
- An Integrated Development Environment (IDE) combines tools for writing, translating, testing and debugging programs in one application.
- An IDE editor can provide features such as syntax highlighting, automatic indentation, line numbering and code completion to make source code easier to create and inspect.
- Error diagnostics identify problems in source code and provide messages that help the programmer locate and correct syntax or run-time errors.
- An IDE’s run-time environment allows a programmer to execute and test a program without leaving the IDE.
- An IDE includes or connects to a compiler or interpreter so that source code can be translated and executed during development.
rocket_launchYou must be able to
- Compare high-level and low-level languages in terms of readability, hardware control, portability, development time and processor dependence.
- Select a high-level or low-level language for a stated task and justify the choice using the task’s requirements.
- Explain why a given source program requires a translator before a processor can execute it.
- Compare compilers and interpreters by describing when translation occurs, how errors are reported, execution speed and software distribution.
- Choose between a compiler and an interpreter for a stated development scenario and justify the choice using relevant benefits and drawbacks.
- Use an IDE editor’s syntax highlighting, indentation, line numbering and code completion features to enter and organise source code accurately.
- Use error diagnostics to locate, interpret and correct syntax and run-time errors in a program.
- Use an IDE’s translator and run-time environment to translate, execute, test and refine a program.
Revision Quiz
trophy
Congratulations! You have completed the quiz.