CS core subjects

Sefism.

A to Z

Glossary

Every concept in this sheet, plus the smaller terms it uses. Select a concept to open its card.

A
Abstraction and interfaces
Depending on what something does rather than how.
B
Binary and hexadecimal
Number systems with base 2 and base 16.
C
Character encoding
The mapping from characters to numbers and bytes.
Class and object
A class defines the data and behaviour of a kind of thing; an object is one instance of it with its own state.
Compiler, interpreter and JIT
A compiler translates a whole program to machine code ahead of time; an interpreter executes it as it reads.
Composition
Building an object from other objects it holds and delegates to, such as a Car that has an Engine.
Coupling and cohesion
Cohesion is how closely the parts of one class belong together; coupling is how much one class depends on the internals of others.
CPU, registers and ALU
The CPU executes instructions.
D
Design pattern
A named, reusable solution to a common design problem, such as Strategy for swappable algorithms or Observer for notifying listeners.
E
Encapsulation
Keeping an object's data private and exposing only operations that keep it valid.
F
Fetch, decode, execute
The loop every CPU runs: fetch the instruction at the program counter, decode it, execute it, then move to the next instruction or jump.
Floating point
The binary format for real numbers: a sign, an exponent and a fraction.
I
Inheritance
A subclass reuses and extends a parent class, and can be used wherever the parent is expected.
L
Logic gates
Tiny circuits that compute a boolean function of their inputs.
M
Memory hierarchy
Storage layers from registers and CPU caches to RAM, SSD and network, each much larger and much slower than the one above.
P
Polymorphism
One call working on many types, each responding in its own way.
S
SOLID principles
Five design guidelines: single responsibility, open closed, Liskov substitution, interface segregation and dependency inversion.
Stack and heap
Two memory regions of a running program.
T
Two's complement
The standard way to store signed integers: to negate a number, invert every bit and add one.
09 · Glossary, A to Z9 / 9