2.5 Programming languages and IDEs Flashcards
Low level languages
Machine code and assembly languages
-binary or mnemonics to represent instructions
-hardware dependant
High level languages
Python, Java, etc
-use english-like keywords
-hardware independent
Translators
Used to convert programming code into machine code for the computer to process
-assemblers
-compilers
-interpreters
Assemblers
Translate low level assembly code into machine code
Compilers
Translates an entire high level program into executable machine code in one go, runs it afterwards
-produces an executable file
-once compiled, code does not need to be translated again
-can distribute the executable so user does not need to see the source file
-compiled code runs very quickly
Interpreters
Translate high level programs to machine code line by line in real time
-translates one line into machine code, runs it, repeat for the next line
-does not produce an executable file
-needs to be translated every time the program is run
-user needs the source code and interpreter to run the program
-interpreted code generally runs more slowly
IDE
Integrated Development Environment - comprehensive set of tools to develop programs
Common features of an IDE
-editor
-error diagnostics - debugging
-step by step progression - watch contents of different variables
-build feature - compiles and links with other needed parts of the program
-version control - revert back to last version
-run time environment - allow programmer to run the code, see the output from the IDE itself
-translator - compiler, interpreter