API- & Vertragsdesign
Eine API ist ein Versprechen, das du halten musst.
Eine API ist ein Vertrag mit Konsumenten, die du nicht siehst und nicht zum Upgrade zwingen kannst - sie gut zu entwerfen und ohne Brüche weiterzuentwickeln ist eine Senior-Fähigkeit. REST-Reife und Ressourcenmodellierung, Versionierung und Abwärtskompatibilität, konsistente Fehler- und Idempotenz-Verträge, OpenAPI und Consumer-Driven Contract Testing - und Events als Verträge mit eigener Schema-Evolution.
Lektionen in dieser Stufe
- 01
REST, richtig gemacht
FortgeschrittenDas Richardson-Reifegradmodell: Ressourcen, HTTP-Verben und Statuscodes korrekt genutzt - und wo HATEOAS/Hypermedia wirklich hilft gegenüber wo es übertrieben ist.
15 Min. - 02
Ressourcen entwerfen
FortgeschrittenRessourcen und URIs modellieren (Substantive, keine Verben), die Konventionen für Pagination, Filterung und Sortierung - und Repräsentationen, die deine Datenbank nicht durchsickern lassen.
14 Min. - 03
Versionierung & Evolution
ExperteWie man versioniert (URI vs. Header vs. Media-Type), der Unterschied zwischen brechenden und nicht-brechenden Änderungen und die Tolerant-Reader-Gewohnheit, die APIs ohne Client-Brüche weiterentwickeln lässt.
16 Min. - 04
Fehler & Idempotenz
ExperteEin konsistenter, maschinenlesbarer Fehlervertrag (RFC 9457 Problem Details) und Idempotenzschlüssel, damit eine wiederholte Anfrage nicht doppelt belastet - die Verträge, die eine API sicher konsumierbar machen.
15 Min. - 05
Verträge & Consumer-Driven Testing
ExperteOpenAPI als maschinenlesbarer Vertrag und Consumer-Driven Contract Testing (Pact / Spring Cloud Contract), das eine brechende Änderung erwischt, bevor sie in Produktion gelangt.
15 Min. - 06
Auch Events sind Verträge
ExperteAsync-APIs brauchen dieselbe Disziplin: ein Event-Schema ist ein Vertrag mit jedem Konsumenten, und sichere Evolution bedeutet Kompatibilitätsregeln und ein Registry (Avro/JSON Schema).
14 Min.