All apps and programs are written
in programming languages.
There are hundreds of languages but
they are split into 2 main types.
Low Level
Very close to pure machine
code and hard to use
Examples:
Assembly Language
Pure Machine Code (Binary)
Not very commonly used because
it's hard to write and understand
Used to write programs that relate to
specific architecture and hardware of
a particular type of computer.
Requires less memory.
Can be executed faster.
Total control over code
High Level
More like normal English, and
easier for humans to use.
Examples:
Python
Java
PHP
C++
Pascal
No particular knowledge of the hardware
is needed. This means it's portable and
not tied to a particular type of chip.
Use a high level of abstraction, which
meanscomplicated tasks can be
represented as a single instruction,
as oppose to many lines of code.
Translators
There are three main ways of doing this:
Compiling
Where a program called a compiler translates
source code into a standalone executable file
Interpreting
Where the source code is converted
into machine code and executed at
the same time, line-by-line
Assembling
This is the process of compiling assembly
code using a program called an assembler.
Computers can only understand machine code, written in
binary, so in order to get it from the source code the
programmers write, the text needs to be translated.
Integrated Development Environments
(IDEs)
IDEs typically contain:
Code Editors
Translator
Syntax Checks
Debugging tools
Automation Tools
Run-time Environments
IDEs are pieces of software that provide the basic
tools that developers need to write and test programs.