Zum Inhalt springen

Service Provider Interface

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 14. Januar 2023 um 20:21 Uhr durch Lutheraner (Diskussion | Beiträge) (QS+). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Dieser Artikel wurde am 14. Januar 2023 auf den Seiten der Qualitätssicherung eingetragen. Bitte hilf mit, ihn zu verbessern, und beteilige dich bitte an der Diskussion!
Folgendes muss noch verbessert werden: Vollprogramm Lutheraner (Diskussion) 19:21, 14. Jan. 2023 (CET)

Ein Service Provider Interface (SPI) ist ein API welches durch eine Drittkomponente implementiert werden soll. Es dient dazu Framework Erweiterungen zu ermöglichen und trägt zur Entwicklung austauschbarer Komponenten bei.

Details

API werden meistens als provided interfaces verstanden, d.h. Schnittstellen, die durch die sie implementierende Komponente definiert werden. D.h. eine Komponente hat die Hoheit über die Interfacedefinition und stellt auch mindestens eine Implementation (meist die einzige Implementation) zur Verfügung. Beispiele von provided interfaces sind zum Beispiel alle öffentlich aufrufbaren proprietären und keinem Standard entsprechenden REST API der grossen Cloudanbieter wie Amazon Web Services, Microsoft Azure und Google Cloud Platform.

Ein SPI hingegen bezeichnet ein required interface, also eine Schnittstellenspezifikation die von einer bestimmten davon abhängigen Komponente verlangt bzw. erwartet wird. Ein Programm welches Plug-ins unterstützt wird zum Beispiel required interfaces definieren, die von den Entwicklern von Plug-ins eingehalten werden müssen. Ebenso wird eine Komponente die sich ihre Abhängigkeiten per Dependency Injection übergeben lässt für jede Abhängigkeit ein required interface definieren, welches die Syntax und Semantik (Kommunikationsprotokoll) der Interaktion damit vorgibt.