Programming Paradigms Glossary
Object-oriented, functional, reactive, aspect-oriented, declarative vs imperative — the fundamental programming paradigms explained.
Pages in this section
OOP (Object-Oriented Programming) — Explained with Examples
Object-oriented programming organizes code around objects containing data and behavior, using encapsulation, inheritance, polymorphism, and abstraction.
✓ LiveFunctional Programming — Explained with Examples
Functional programming is a declarative paradigm that treats computation as the evaluation of pure functions, avoiding mutable state and side effects.
✓ LiveReactive Programming — Explained with Examples
Reactive programming is a declarative paradigm centered on data streams and the automatic propagation of changes through those streams.
✓ LiveAOP (Aspect-Oriented Programming) — Explained with Examples
Aspect-oriented programming modularizes cross-cutting concerns like logging, security, and transactions by separating them from business logic.
✓ LiveDeclarative vs Imperative Programming — Explained with Examples
Declarative programming expresses what the result should be, while imperative programming describes step-by-step how to achieve it.
✓ LiveProcedural Programming — Explained with Examples
Procedural programming structures code into reusable functions or procedures that operate on data through a sequence of step-by-step instructions.
✓ LiveEvent-Driven Programming — Explained with Examples
Event-driven programming controls program flow through events, where event handlers or callbacks respond to user actions, messages, or system signals.
✓ LiveMetaprogramming — Explained with Examples
Metaprogramming is a technique where programs can read, generate, analyze, or transform other programs — including themselves — at compile or runtime.
✓ LiveReflection — Explained with Examples
Reflection is a programming language feature that allows a program to inspect and modify its own structure and behavior at runtime.
✓ LiveData-Driven Programming — Explained with Examples
Data-driven programming structures program logic around configuration data, tables, or rules rather than hard-coded conditional branches.
✓ LivePrototype-Based Programming — Explained with Examples
Prototype-based programming achieves code reuse through object cloning and delegation, where objects inherit directly from other objects without classes.
✓ LiveLiterate Programming — Explained with Examples
Literate programming reverses the traditional priority by writing programs primarily for human readers, with code embedded within explanatory prose.
✓ Live