Software Development i - Types of software Flashcards
Translator
A program that converts code from one programing language to another. e.g compilers, assemblers and interpreters.
Compiler
A translator that transforms an entire program written in source language to an equivalent program in a target language.
Bytecode
Intermediate code (used to translate source code into machine code) that can be executed by a virtual machine. e.g Java bytecode
Interpreter
A translator that checks and executes lines of source code one line at a time.
Assembler
A translator that checks and executes assembly language into machine code.
Utility Software
System software that is used to help analyse, configure, optimise or maintain a computer.
System Software
Software that is used to run the computer’s hardware and application programs.
General purpose software
Applications that are not designed for particular business, industry or department.
Special purpose software
Applications that are designed for a particular business, industry or department. Example CAD programs
Bespoke
Custom software specially developed to suit the needs of a particular organisation or client.
Open source
The source code can be freely accessed, used, changed and shared by anyone.
Closed source
a.k.a proprietary software that legally remains the property of the organisation, group, or individual who created it.
Virtual machine
A self-contained operating environment that behaves as if it is a separate computer.
Emulator
Accurately reproduces the behaviour of some hardware, e.g an Android phone emulator running on a PC.
High level language
A programming language with strong abstraction from the details of the computer.