# Glossary

Application
Computer program designed to solve specific problems for users.
Client
Software which requests services from a server.
Cloud computing
The delivery of computing services over the Internet.
Control flow
The order in which individual instructions are executed or evaluated.
Database
A collection of structured data, organized for efficient storage.
Dependency
A software library or module required by another software module.
Encapsulation
Tightly coupling data and functions; data hiding.
Event
A message indicating that something has happened; often used to trigger actions from external sources e.g., user input.
Functional programming
Constructing programs by composing and combining functions.
HTML
Hypertext Markup Language, used in describing web pages.
IDE
Integrated Development Environment; programming environment.
JSON
JavaScript Object Notation. A common network data format.
Library
A collection of precompiled resources that a program can use.
Markdown
A lightweight markup language for creating formatting text.
NoSQL
Storage and retrieval of data without tabular relations.
Object-oriented programming
Programs as a collection of objects with properties and behaviours.
Progressive Web App
Web applications that load like regular web pages, but offer functionality such as working offline, push notifications, and device hardware access.
Recursion
A function that calls itself, often used in algorithms.
Repository
A storage location for software packages, modules or libraries.
Server
Software which manages access to a centralized network resource.
Service
Software designed to support machine-to-machine interaction.
Standard Library
The library included in implementations of a programming language.
SQL
Structured Query Language, used in managing relational databases.
TCP/IP
Transmission Control Protocol/Internet Protocol.
TOML
Tom's Obvious, Minimal Language. A configuration file format.
YAML
YAML Ain't Markup Language. A human-readable file format.