Skip to content

5 Tipps für die API-Entwicklung

Bei der Arbeit mit HR-Systemen, um Synchronisierungsvorgänge zur AD automatisieren zu können, sind Abfrageschnittstellen entscheidend. Diese können in gängigen Formaten wie XML oder JSON abgerufen werden. Die Authentifizierung erfolgt meist über OAuth oder Token-basiert.

Aus dem YouTube-Video (Want to build a good API?) gibt es folgende interessante Hinweise, um eine API stabil und erweiterungsfähig zu gestalten.

  1. Generieren von Identifikatoren (IDs)
    • Probleme mit Auto-Inkrement-IDs in verteilten Umgebungen.
    • Vorteile des Generierens von IDs auf API-Ebene (z.B. UUIDs, ULIDs) und asynchroner Arbeit.
      (Eine ULID kann sogar zur Sortierung genutzt werden.)
  2. Erzeugung von bedeutungsvollen Identifikatoren
    • Unterschied zwischen zufällig generierten und bedeutungsvollen IDs.
    • Beispiel: Generierung einer geografisch und zeitlich relevanten Bestell-ID.
  3. Rückmeldungen und Aktionen
    • Bereitstellung von Informationen über mögliche Aktionen basierend auf dem Zustand des Systems.
    • Vorteile der Rückgabe von Aktionen in der API-Antwort.
      (Anmerkung: Auch einen entsprechenden Status oder mögliche Folgeaktionen, siehe MS Dataverse mit Paging-Attributen im Response, um weitere Datensätze nachzuladen)
    • Evolvierbarkeit und Änderung von Geschäftslogik ohne Beeinträchtigung des Clients.
  4. Struktur der API-Antwort
    • Probleme mit starren Antwortstrukturen.
    • Vorteile der Rückgabe von Objekten anstelle von Arrays.
    • Überlegungen zur zukünftigen Erweiterbarkeit der API-Antwort.
  5. Verwendung der Domänensprache
    • Vermeidung technischer Begriffe und Fokus auf domänenspezifische Terminologie.
    • Unterschied zwischen CRUD-Operationen und domänenspezifischen Verhaltensweisen.
    • Bedeutung der Konsistenz in der API-Terminologie.
      (Anmerkung: Begriffe verwenden, die aus der Fachsprache des Anwenders der API stammen.)
1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 3,00 out of 5)
Loading...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert