Skip to content

Python Programming

This family collects long-form Python courses about semantics, runtime boundaries, and how to keep a design understandable when a codebase grows more state, more abstraction, or more runtime power.

Expand a program in the sidebar to open its full course-book and capstone tree. The overview pages below are the short routing layer, not the whole library.

Family Maps

graph LR
  family["Python Programming"]
  oop["Object-Oriented Programming"]
  fp["Functional Programming"]
  meta["Meta-Programming"]

  family --> oop
  family --> fp
  family --> meta
flowchart LR
  choose["Choose the design pressure"] --> objects["Object collaboration and invariants"]
  choose --> functions["Purity, effects, and async flow"]
  choose --> runtime["Introspection, decorators, descriptors, metaclasses"]
  objects --> oop["Python Object-Oriented Programming"]
  functions --> fp["Python Functional Programming"]
  runtime --> meta["Python Meta-Programming"]

How to Read This Family

  • Start with object-oriented programming when you need explicit roles, aggregates, and long-lived change boundaries.
  • Start with functional programming when you need purity, pipeline discipline, effect isolation, and async coordination.
  • Start with meta-programming when you need runtime hooks but want to stay honest about invariants and debugging cost.
  • Move back through this family page when you want to compare how the three programs answer similar design pressures differently.

Program Routes

Python Object-Oriented Programming

Python Functional Programming

Python Meta-Programming

Object Boundaries

Open the OOP program tree when you need aggregates, invariants, lifecycle design, and operational review routes.

Functional Discipline

Open the functional program tree when you need purity, effect isolation, and pipeline-oriented proof surfaces.

Runtime Power

Open the metaprogramming tree when you need descriptors, decorators, metaclasses, and explicit public-surface review.

Local Commands

make docs-serve
make PROGRAM=python-programming/python-object-oriented-programming docs-serve
make PROGRAM=python-programming/python-functional-programming test

Purpose

This page helps a reader choose the Python program that matches the current design pressure before they enter the full course-book and capstone tree.

Stability

This page is part of the canonical docs spine. Keep it aligned with the checked-in program set and the learner entry routes exposed in the synced library.