Skip to main content

Learning Resources

This generated surface maps a learner-facing curriculum unit to its canonical source routes.

Curriculum surface

  • Open learner-facing unit
  • Curriculum path: content/curriculum/architecture/semester-07-architecture-ddd/module-04-api-design-contract-evolution/resources.md
  • App: architecture
  • Semester: semester-07-architecture-ddd
  • Module: module-04-api-design-contract-evolution
  • Unit kind: resource
  • Curation level: module_curated

Learning objectives

  • Explain Learning Resources as a contract and evolution problem, not just an endpoint-shape or schema-format decision.
  • Use Learning Resources to reason about compatibility, versioning, lifecycle cost, and the blast radius of public interfaces.
  • Use api-design-patterns, fundamentals-of-software-architecture, learning-domain-driven-design to connect the learner page to contract design, compatibility strategy, and API governance decisions.

Prerequisites

  • Comfort with modular boundaries and bounded contexts, because APIs are where those boundaries become explicit contracts.

Source books

  • api-design-patterns
  • fundamentals-of-software-architecture
  • learning-domain-driven-design

Source routes

Api Design Patterns

  • /books/api-design-patterns via Geewax: Agile instability, Geewax: Anti-patterns, Geewax: Backward compatibility 1, Geewax: Backward compatibility 2, Geewax: Backward compatibility 3 + implementation, Geewax: Bad names case study, Geewax: Batch - collective operations, Geewax: Batch atomicity, Geewax: Batch get, batch create, Geewax: Canceling and exploring, Geewax: Consistency, ids, relatives, Geewax: Create and update, Geewax: Cross references, Geewax: Custom methods motivation, Geewax: Delete, Geewax: Deleted designation, Geewax: Entity relationships, Geewax: Error handling and monitoring, Geewax: Exponential back-off, Geewax: Expressive and simple, Geewax: Expunging, Geewax: Filter syntax 1, Geewax: Filter syntax 2, Geewax: Filter syntax 3 and tradeoffs, Geewax: Filtering structure, Geewax: Granularity vs simplicity, Geewax: Happiness vs ubiquity, Geewax: Import-export, Geewax: LRO motivation, Geewax: LRO overview, Geewax: LRO resolution, Geewax: List, Geewax: Overview, side effects, Geewax: Page size, Geewax: Page tokens, Geewax: Partial update motivation, Geewax: Perpetual stability, Geewax: Polymorphism - structure, Geewax: Predictable, Geewax: References vs inline, Geewax: Request authentication, Geewax: Request deduplication, Geewax: Request retrial, Geewax: Request validation, Geewax: Rerunnable jobs, Geewax: Resource revisions, Geewax: Resources vs collections, tradeoffs, Geewax: Retry-After, tradeoffs, Geewax: Revision identifiers, Geewax: Semantic versioning and tradeoffs, Geewax: Soft delete across versions, tradeoffs, Geewax: Soft deletion motivation, Geewax: Total count, offsets-limits anti-pattern, Geewax: Types of relationships, Geewax: What are API design patterns?, Geewax: What are resource-oriented APIs?, Geewax: What are web APIs?, Geewax: What are web APIs? (revisit), Geewax: What is compatibility?, Geewax: What is resource layout?, Geewax: What makes a name good, Geewax: Which methods, idempotence, GET, Geewax: Why are API design patterns important?

Fundamentals Of Software Architecture

  • /books/fundamentals-of-software-architecture via Fundamentals of Software Architecture: Defining software architecture, Fundamentals of Software Architecture: EDA style, Fundamentals of Software Architecture: Monolithic vs distributed

Learning Domain Driven Design

  • /books/learning-domain-driven-design via Learning DDD: Anticorruption layer, Learning DDD: Cooperation to conformist, Learning DDD: Event-driven architecture, Learning DDD: Model translation, Learning DDD: Types of events

Supporting curriculum routes

No supporting curriculum routes linked yet.

External enrichment

  • Microsoft REST API Guidelines (official_docs_companion) - Anchors API contract thinking in a real, widely used design standard rather than intuition.
  • Zalando RESTful API Guidelines (optional_deep_dive) - Useful for comparing how different organizations encode compatibility and lifecycle tradeoffs.

AI companion modes

  • Explain simply
  • Diagnose my confusion
  • Revision mode
  • Connect forward / backward

Source-of-truth note

This teaching unit is learner-facing guidance assembled from multiple canonical book routes. Use the listed source books as the primary conceptual spine for Learning Resources, and treat outside material as supporting enrichment only.