Ein Plugin oder Plug-In, vom englischen „einstöpseln“, bezeichnet ein Erweiterungsmodul für jede Form von Software. Das Plugin wird dabei in den bestehenden Kern des Programms eingefügt und bietet danach weitere Funktion. Es ist die Regel, dass eine Software, die ein Plugin unterstützt, auch modifiziert werden kann. Das hält sich vor allem bei Mods für Spiele, die aber nicht mehr direkt als Plugin gezählt werden können. Plugins sind am populärsten aufgrund von Webbrowsern, denn schon viele Nutzer haben sich mit diesen herum geplagt, obwohl sie äußerst unkompliziert installiert werden können. Die bekanntesten Plugins stellen dabei Java und der Flash Player dar, die für viele Videos und Anwendungen im WorldWideWeb notwendig sind. Der Standard ist durch die Plugins gegeben und jeder Player im Internet benötigt diese. Aber Plugins sind nicht nur im Browser verfügbar. Ein Überbegriff für Plugin ist Add-On, worunter auch mehrere Kategorien zählen, die ein bestehendes Programm erweitern können. Datenbankprogramme werden neben Browsern bevorzugt mit Plugins ausgestattet, denn so lassen sich zusätzliche Erweiterungen schaffen, die nicht nur die Benutzerfreundlichkeit erhöhen, sondern auch Funktionen bieten, die im Standardprogramm nicht enthalten sind. Ein Plugin kann nur in einer Software verfügbar sein, die eine Schnittstelle vom Programmierer erhält, denn sonst können diese gar nicht auf den Kern zugreifen. Ebenfalls ein Plugin kann ein Widget sein, obwohl diese nicht direkt in den Kern eines Programms eingreifen, sondern auf dem Betriebssystem erscheinen und ähnliche Aufgaben wie Plugins haben.
Wie entstanden Plugins?
Die Notwendigkeit zusätzlicher Module zur Verbesserung der Leistung war den Entwicklern schon in 70er Jahren klar. Das erste offizielle Plugin wurde beim EDT Text Editor genutzt, der damals über ein Unisys VS/9 operating System lief und auf einem Univac 90/60 installiert war. Der Programmierer konnte nun durch diese Konstellation in den Editor eingreifen, der es wiederum ermöglichte auf den Speicher zuzugreifen und ein anderes Programm über den Buffer zu steuern. Durch diese Zusatzfunktion fingen die Entwickler der Programmiersprachen an, mehr solcher Plugins zu entwickeln. Dieses Plugin ist als Waterloo Fortran Compiler bekannt und erlaubte eine Kommunikation über Textdokumente.
Programme, die erste Plugins unterstützten, waren unter anderem HyperCard von Apple und QuarkXPress von Quark. Das Programm HyperCard war eines der ersten HyperText-Systeme und nutzte die Plugins um noch mehr Funktionen verfügbar zu machen. Die Xtensions waren dabei die früheren Plugins. QuarkXPress war das erste Layoutprogramm, das durch Plugins verbessert werden konnte und so zum Beispiel mehr Farben bot oder komplett neue Möglichkeiten zur Erstellung eines Designs. Damals konnte Mac noch sehr leicht verändert werden und das nutzten die Entwickler. Das Besondere an HyperText war die Installation des Plugins, das nicht in der Programmbibliothek abgespeichert war, sondern direkt im Ordner von HyperText unter stacks. Das brachte aber auch viele Probleme mit sich, denn das Programm hat diese oft nicht erkannt oder falsch gewertet. Damit war auch die Installation erleichtert, denn es musste kein extra Ordner angelegt werden.
Funktionsweise
Plugins wird es durch die Schnittstelle im Programm ermöglicht erkannt zu werden. Nach der Verbindung mit dem Programm tauschen sich der Hoster und das Plugin untereinander mit Informationen aus, die wichtig für die Funktionsweise des Plugins ist. Ein Plugin funktioniert nicht von alleine, kann aber einzeln behandelt werden. Das heißt es kann manuell installiert oder deinstalliert werden. Dadurch werden dem Nutzer bessere Möglichkeiten gegeben um den Host zu konfigurieren. Heute ist es üblich, dass das Plugin von selbst installiert wird, denn eine manuelle Installation ist nicht für jeden geeignet. Das unterstützte Programm wird dabei aber nicht verändert und muss deshalb bei der Deinstallation eines Plugins nicht entfernt werden. Dafür nutzt die Schnittstelle, die nur wie ein Lieferant wirkt, der die Informationen bereitstellt und der sich dann wieder in sein Auto (Schnittstelle) setzt. Inversion of Control ist der Begriff für diese Funktion, auch als „Hollywood-Prinzip“ betitelt. Offene Programmierschnittstellen erlauben es jedem selber Plugins zu erstellen. Beispiele hierfür sind die Anwendungen Adobe Photoshop und After Effects, die mit Brushes, Fonts und mehr erweitert werden können.
Der Unterschied zu Add-Ons
Zwischen Plugins und Add-Ons existiert ein kleiner, aber feiner Unterschied. Plugins werden manuell vom Host-Programm behandelt und erzeugen keine Probleme bei der Entfernung oder Installation. Sie sind sicher verpackt und bieten keine Möglichkeit schädigend auf das System zu wirken. Das kann bei einem Add-On aber passieren. Vor allem Gamer kennen dieses Problem. Die Grundversion eines Spiels ist installiert und nun soll die Erweiterung darüber gesetzt werden. Während der Installation kann es jedoch zu einem Fehler kommen und nun muss das ganze Spiel deinstalliert werden, da die Grunddateien beschädigt wurden. Ebenfalls kann nach einer geglückten Installation das Add-On in den Systemkern eingreifen und diesen verändern. Modifikationen wirken auf die gleiche Weise, bergen aber ein erhöhtes Sicherheitsrisiko, denn die Mods können sehr viele Bugs beherbergen und die Modder selbst haben nur wenige Ressourcen zum Testen verfügbar. Der Programmkern wird dabei völlig für das Add-On offengelegt und muss nach einem inkompatiblen Verhalten wiederhergestellt werden, was nur mithilfe einer Neuinstallation funktioniert. Ein Add-On bietet aber den Vorteil, dass mehr Daten und ein größerer Umfang zur Verfügung stehen. Plugins bringen nur bestimmte Funktionen zum Tragen, die aber essentiell für viele Multimedia-Inhalte der heutigen Zeit sind.
Plugin-Arten
Ein Audio-Plugin funktioniert wie ein virtuelles Effektgerät. Je mehr Audio-Plugins vorhanden sind, desto realer erscheint das virtuelle Studio, welches genutzt werden kann um ganze Tracks zu erstellen. Audio-Plugins können auf Mac und Windows laufen und sind untereinander kompatibel. Die typischen Plugin-Standards für Audio-Schnittstellen haben sich vor allem drei Typen bewährt. Digidesign TDM, Audio Unit und Virtual Studio Technology. Diese besitzen jeweils andere Vorzüge und sind vor allem durch die Möglichkeit jede Schnittstelle nutzen zu können interessant. Musik und MIDI lassen sich damit bearbeiten und optimieren.
Grafik-Plugins sind speziell für die Erweiterung von Bildbearbeitungsprogrammen gedacht. Diese können mit speziellen Grafikfiltern verbessert werden, die meist in einem separaten Ordner abgespeichert werden. Das Programm ruft dann die Informationen ab. Grafik-Plugins sind für jedes Bildbearbeitungsprogramm verfügbar, auch für 3D-Programme. Solche Filter werden immer öfter von Personen kreiert und das Internet bietet einen großen Marktplatz für diese. Sie sind nur mit Administrator-Berechtigungen zu installieren und somit ist die Sicherheit gegeben, dass sie keine Beschädigung des Systems verursachen.
Die bekannteste Form sind die Browser-Plugins. Diese werden genutzt, sobald ein Browser keine typischen Browserstandards wie HTML oder JavaScript nutzt und dadurch erweitert werden muss. Streaming-Videos, Musikdateien, Flash und PDF können somit direkt vom Browser aus erkannt werden. Ohne den Flash Player kann zum Beispiel nicht der Dienst von Youtube genutzt werden. Mithilfe der Netscape-API bleiben diese Plugins einheitlich und werden von jedem Browser erkannt, nur die Hardware unterscheidet sich je nach Programmiercode. Ein Mac benötigt eine andere Programmierung des Plugins als Windows oder Linux. Bis jetzt bieten Plugins nur die Wiedergabe multimedialer Inhalte, aber keine Erweiterung im eigentlichen Sinne. Dafür kommen aber nun immer mehr Applikationen auf, die den Browser erweitern und nicht wie ein Add-On wirken. Sie können ohne Probleme wieder gelöscht werden, nachdem Sie nicht mehr benötigt werden. Auf den Programmkern wird dabei nicht zugegriffen. Für solche Erweiterungen wird dennoch eine zweite Schnittstelle benötigt, die aber in den gängigen Browsern enthalten ist. Auch die mobilen Browser besitzen mehrere Schnittstellen und erlauben eine Vielzahl von Plugins, die nicht nur die Inhalte abspielen, sondern auch den Browser verbessern. Ebenfalls können Smartphones Widgets erhalten. Diese basieren auf der gleichen Technik, stellen aber ein eigenständiges Programm dar.
Zusammenfassung
Plugins sind Erweiterungsmodule für Software und bieten zusätzliche Funktionen, indem sie sich in den Softwarekern einfügen. Sie sind besonders verbreitet in Webbrowsern und Datenbankprogrammen. Ein Plugin funktioniert über eine Programmierschnittstelle, die von der Host-Software bereitgestellt wird.
Die Entwicklung von Plugins begann in den 1970er Jahren und hat seitdem einen langen Weg zurückgelegt. Ursprünglich wurden sie in Texteditoren und Layoutprogrammen wie HyperCard und QuarkXPress verwendet. Heutzutage sind sie unverzichtbar in einer Vielzahl von Anwendungen, darunter auch professionelle Software wie Adobe Photoshop.
Ein Plugin arbeitet nach dem Inversion-of-Control-Prinzip, auch als „Hollywood-Prinzip“ bekannt. Es interagiert mit der Host-Software, ohne diese zu verändern und kann manuell oder automatisch installiert bzw. deinstalliert werden.
Während Add-Ons und Plugins ähnlich erscheinen, gibt es Unterschiede in der Funktionsweise und der Sicherheit. Add-Ons können den Systemkern beeinflussen und bringen ein erhöhtes Sicherheitsrisiko mit sich, während Plugins isolierter und sicherer sind.
Es gibt verschiedene Arten von Plugins, darunter Audio-Plugins, Grafik-Plugins und Browser-Plugins. Jede Art dient einem speziellen Zweck und erweitert die Funktionalität der Host-Software in unterschiedlichen Bereichen.
Häufige Fragen und Antworten
Was ist ein Plugin?
Ein Plugin oder Plug-In bezeichnet ein Erweiterungsmodul für jede Form von Software. Es wird in den bestehenden Kern des Programms eingefügt und bietet zusätzliche Funktionen.
Wie entstanden Plugins?
Die Notwendigkeit zusätzlicher Module zur Verbesserung der Leistung war den Entwicklern schon in den 70er Jahren klar. Das erste offizielle Plugin wurde beim EDT Text Editor genutzt und erlaubte eine Kommunikation über Textdokumente.
Was ist der Unterschied zu Add-Ons?
Zwischen Plugins und Add-Ons gibt es einen Unterschied. Plugins werden manuell vom Host-Programm behandelt und erzeugen keine Probleme bei der Entfernung oder Installation. Add-Ons hingegen können das System beeinflussen und ein Sicherheitsrisiko darstellen.
Welche Arten von Plugins gibt es?
Es gibt verschiedene Arten von Plugins, darunter Audio-Plugins, Grafik-Plugins und Browser-Plugins. Jede Art dient einem speziellen Zweck und erweitert die Funktionalität der Host-Software in unterschiedlichen Bereichen.