Ein Applet ist eine Art Software, die für die Ausführung im Kontext eines größeren Programms, häufig eines Webbrowsers, konzipiert ist und umfangreiche, interaktive Funktionen bereitstellt, die das Kernprogramm selbst nicht bietet. Applets sind in der Programmiersprache Java geschrieben und werden hauptsächlich im Netzwerk-Computing verwendet. Sie können auf Benutzereingaben wie Mausklicks oder Tastenanschläge reagieren und auch mit anderen Applets auf derselben Webseite interagieren.
Historischer Hintergrund des Applets
Die Geschichte der Applets reicht bis in die Mitte der 1990er Jahre zurück, als die Programmiersprache Java erstmals von Sun Microsystems entwickelt wurde. Der Begriff „Applet“ wurde erstmals 1995 verwendet, als Java der Welt als neue, für das Internet entwickelte Programmiersprache vorgestellt wurde. Das Konzept bestand darin, eine kleine Anwendung bereitzustellen (daher der Begriff „Applet“), die in eine HTML-Seite eingebettet und in einem Webbrowser ausgeführt werden konnte.
Erweiterung zu Applets
Applets sind, wie bereits erwähnt, kleine Java-Programme, die in eine HTML-Seite integriert werden können, auf der Clientseite ausgeführt werden und von einer Java Virtual Machine (JVM) ausgeführt werden. Ein Applet kann in jedem Webbrowser ausgeführt werden, der die JVM unterstützt. Sie dienen dazu, Webseiten dynamischer und unterhaltsamer zu gestalten. Sie können beispielsweise interaktive Grafiken anzeigen oder Berechnungen basierend auf Benutzereingaben durchführen.
Ein Applet hat einen Lebenszyklus, der vom Browser und der JVM gesteuert wird. Der Lebenszyklus umfasst vier Phasen: Initialisierung, Starten, Stoppen und Löschen. Ein Applet beginnt sein Leben, wenn es von der JVM geladen und instantiiert wird. Anschließend wird es initialisiert, gestartet und auf der Webseite angezeigt. Wenn der Benutzer die Seite verlässt, wird das Applet von der JVM gestoppt und gelöscht.
Die Funktionsweise eines Applets
Ein Applet besteht aus Java-Bytecode, einer plattformunabhängigen Darstellung des Programms, und wird in einer im Browser installierten JVM ausgeführt. Wenn eine Webseite mit einem Applet geladen wird, lädt das Java-Plugin des Browsers den Bytecode des Applets herunter, startet eine JVM und lädt und führt das Applet dann innerhalb der JVM aus.
Das Applet interagiert mit der Webseite über das Document Object Model (DOM) und kann auch über HTTP oder andere Internetprotokolle mit dem Server kommunizieren, von dem es geladen wurde. Aus Sicherheitsgründen ist es jedoch in der Regel in einer Sandbox untergebracht und darf nicht auf lokale Dateien oder bestimmte Systemressourcen zugreifen.
Hauptmerkmale des Applets
- Plattformunabhängigkeit: Applets werden in Java geschrieben, das plattformunabhängig ist. Sie können auf jedem Gerät ausgeführt werden, das über einen Browser verfügt, der die JVM unterstützt.
- Netzwerkkonnektivität: Applets können über das Netzwerk kommunizieren und so Teil vernetzter Anwendungen sein.
- Sandbox-Sicherheit: Sie werden in einer Sicherheits-Sandbox ausgeführt, um den unbefugten Zugriff auf Systemressourcen zu verhindern und so die Sicherheit der Benutzer zu gewährleisten.
- Umfangreiche Benutzeroberfläche: Applets können komplexe grafische Benutzeroberflächen (GUIs) erstellen und flüssige Animationen erzeugen, wodurch sie sich für die Erstellung interaktiver Anwendungen eignen.
Arten von Applets
Es gibt hauptsächlich zwei Arten von Applets:
-
Lokale Applets: Diese Applets müssen nach dem Herunterladen keine Verbindung zum Internet herstellen. Sie laufen im Browser des Benutzers und führen Funktionen aus, ohne dass eine Verbindung zu einem Server erforderlich ist.
-
Remote-Applets: Diese Applets erfordern eine ständige Internetverbindung. Sie kommunizieren mit einem Server, um ihre Funktionen auszuführen.
Verwendung des Applets und damit verbundene Probleme
Applets werden häufig verwendet, um interaktive Funktionen auf Webseiten bereitzustellen, beispielsweise Spiele, Rechner, Animationen und interaktive Karten. Sie können auch für komplexere Aufgaben wie Online-Abstimmungen, E-Commerce und Remote-Desktop-Anwendungen verwendet werden.
Allerdings hat die Verwendung von Applets im Laufe der Jahre aufgrund mehrerer Probleme abgenommen:
- Sicherheitsprobleme: Obwohl Applets in einer Sandbox ausgeführt werden, wurden sie in der Vergangenheit für böswillige Zwecke missbraucht, weshalb sie bei vielen Benutzern und Organisationen Anlass zur Sorge bieten.
- Leistung: Da Applets auf der Clientseite ausgeführt werden, kann ihr Laden lange dauern und sie können erhebliche Systemressourcen verbrauchen.
- Abhängigkeit von Java: Benutzer müssen eine Java Runtime Environment (JRE) in ihrem Browser installiert und richtig konfiguriert haben, was für nicht-technische Benutzer eine komplexe Aufgabe sein kann.
Vergleich von Applets mit ähnlichen Begriffen
Hier ist ein Vergleich von Applets mit ähnlichen Konzepten:
Begriff | Definition | Ausführung |
---|---|---|
Applet | Eine kleine, in eine HTML-Seite eingebettete Anwendung, die von einer JVM in einem Webbrowser ausgeführt wird | Client-seitig |
Servlet | Ein Java-Programm, das auf einem Server ausgeführt wird und normalerweise zum Generieren dynamischer Webinhalte verwendet wird | Serverseitig |
JavaScript | Eine Skriptsprache für Webseiten, die von der JavaScript-Engine des Browsers ausgeführt wird | Client-seitig |
Zukünftige Perspektiven und Technologien im Zusammenhang mit Applets
Die Zukunft von Applets ist aufgrund des Aufkommens moderner Webtechnologien wie HTML5, CSS3 und JavaScript ungewiss. Diese bieten ähnliche Funktionen, ohne dass Benutzer eine JVM installieren oder sich mit den Sicherheitsproblemen von Java auseinandersetzen müssen.
Allerdings gibt es immer noch Bereiche, in denen Applets die Oberhand haben, beispielsweise komplexe Anwendungen, die die volle Leistungsfähigkeit von Java erfordern. Darüber hinaus ermöglicht die Java Web Start-Technologie das Starten voll ausgestatteter Java-Anwendungen direkt über den Webbrowser, was zu einem Wiederaufleben der Applet-ähnlichen Funktionalität führen könnte.
Applets und Proxyserver
Obwohl Applets und Proxyserver unterschiedliche Technologien sind, können sie in bestimmten Situationen interagieren. Ein Proxyserver kann die Verbindung zwischen einem Applet und dem Server, mit dem es kommuniziert, vermitteln und bietet so Vorteile wie Caching, Filterung und verbesserte Sicherheit. Es ist jedoch wichtig zu beachten, dass das Applet so konzipiert sein muss, dass es Proxyserver unterstützt, und dass der Browser des Benutzers für die Verwendung des Proxyservers konfiguriert sein muss.
verwandte Links
Weitere Informationen zu Applets finden Sie in diesen Ressourcen: