Erweiterungssysteme
Erweiterungssysteme bezeichnen Architekturen, die die Funktionalität eines Softwaresystems durch lose gekoppelte Erweiterungen erweitern. Ziel ist es, neue Funktionen hinzuzufügen, ohne den Kerncode umfangreich zu ändern. Typische Beispiele finden sich in Webbrowsern, integrierten Entwicklungsumgebungen, Content-Management-Systemen und Betriebssystemen, die über Plug-ins oder Add-ons ergänzt werden.
Die Kernidee umfasst ein Core-System, ein Erweiterungs-Framework und Erweiterungspunkte, an denen Erweiterungen andocken. Erweiterungen liefern eigene
Funktionsweise: Beim Start oder laufend scannt das Framework verfügbare Erweiterungen, lädt sie, registriert ihre Fähigkeiten und
Vorteile sind Flexibilität, Anpassbarkeit und ein größeres Ökosystem; der Core bleibt stabil, während Anpassungen extern erfolgen.
Anwendungsgebiete reichen von Browsern, Content-Management-Systemen wie WordPress, Entwicklungsumgebungen wie Eclipse oder VS Code bis zu modularen