Die meisten modernen Anwendungen (Single-Page-Web-Apps, mobile Apps usw.) bestehen aus zwei Teilen:
Zur Verbindung von Frontend und Backend wird im Allgemeinen eine Web-API (REST, GraphQL usw.) verwendet, was die Entwicklung eines API-Clients auf der Frontend-Seite und eines API-Servers auf der Backend-Seite erfordert.
Wir haben die folgende Architektur:
Mit einer API-losen Architektur kann das Frontend mit dem Backend kommunizieren, ohne dass eine Web-API erstellt werden muss. Das Backend stellt Funktionen (oder Methoden) bereit, die das Frontend direkt aufrufen kann, und der Entwickler muss sich nicht mehr um URL-Pfade, HTTP-Methoden oder Statuscodes kümmern.
Da das Frontend und das Backend in getrennten Umgebungen laufen, gibt es natürlich zwangsläufig einen API-Client und einen API-Server dazwischen, diese liegen jedoch nicht mehr in der Verantwortung des Entwicklers. Die API-Schichten werden von einer Bibliothek oder einem Framework verwaltet.
Eine API-lose Architektur sieht also so aus:
Das Entfernen der API-Schichten reduziert nicht nur die Menge an Code, die der Entwickler schreiben muss, sondern verbessert auch die Qualität, indem die Codestreuung und Wissensduplizierung reduziert werden.
Eine wachsende Zahl von Bibliotheken und Frameworks ermöglicht die Implementierung der API-losen Architektur.
Produkt | Produkttyp | API-Typ | Echtzeit | Mobiler Support | Seit |
---|---|---|---|---|---|
Meteor | Rahmen | Verfahrenstechnisch | Ja | Ja | 2012 |
Layr | Bibliothek | Objektorientiert | Auf der Roadmap | Ja | 2019 |
Blitz.js | Rahmen | Verfahrenstechnisch | NEIN | Auf der Roadmap | 2020 |
tRPC | Bibliothek | Verfahrenstechnisch | In der Beta | Ja | 2021 |
Telefunk | Bibliothek | Verfahrenstechnisch | Auf der Roadmap | Ja | 2021 |
Beiträge sind willkommen.
Bevor Sie einen Beitrag leisten, lesen Sie bitte den Verhaltenskodex und durchsuchen Sie den Issue-Tracker, um herauszufinden, ob Ihr Problem bereits zuvor besprochen wurde.
Um einen Beitrag zu leisten, forken Sie dieses Repository, übernehmen Sie Ihre Änderungen und senden Sie eine Pull-Anfrage.
MIT