Java ist eine objektorientierte Programmiersprache, die von Sun Microsystems entwickelt wurde. Sie fügt in das WWW völlig neue Fähigkeiten und Funktionen ein. Java ist plattformunabhängig, was bedeutet, daß ein Programm nur einmal geschrieben und compiliert werden muß und dann auf mehreren Plattformen wie z. B. MS-DOS, Windows95 und Unix läuft. Java Programme werden nicht zu Maschinencode compiliert sondern zu einem sog. Bytecode, der dann auf jeder Plattform mit einer Java Virtual Maschine in Maschinencode umgewandelt wird.
Java basiert auf C++ und viele Befehle wurden aus dieser Sprache übernommen. Doch müssen u. a. die Zeiger und die manuelle Speicherverwaltung weggelassen werden, um die Sicherheit der Programme im Internet zu gewährleisten.
Java läßt sich in 2 verschiedenen Ausführungen anwenden:
Java Applet | Java Applikation |
Kleines Programmstück (Byte-Code), das im Rahmen einer größeren Anwendung über eine Referenz vom Server geholt und auf einem Client ausgeführt wird. | Programme (ausführbarer Code), die normalerweise auf dem Server laufen. |
Die Vorteile, die Java gegenüber anderen Programmiersprachen
bietet, lauten wie folgt:
In Java geschriebene Applikationen laufen auf jedem Computer, der
über eine Java Virtual Maschine verfügt, damit ist die
Anwendung unabhängig vom Betriebssystem und der Hardware. Java
bringt interaktive Funktionalitäten in das WWW. Java ist eine
objektorientierte Programmiersprache, die für jeden C++
Programmierer leicht zu erlernen ist. Java Applikationen können
in WWW-Seiten integriert werden. Java erlaubt das Entwickeln
komplexer Anwendungen.
Einzelheiten zu Java siehe Vortrag Nr.9 "Java und das
Internet".
Der Name JavaScript deutet auf eine enge Verwandtschaft mit
der Programmiersprache Java hin. Mit JavaScript wurde von
Netscape und Sun Microsystems eine Scriptsprache entwickelt, die
auf Java aufbaut. JavaScript unterstützt die meisten Java
Ausdrücke mit deren Syntax. JavaScript ist wie Java
objektorientiert aufgebaut, die Grundlage bilden sog. Objekte,
deren Methoden (Funktionen) aus Anwendungen aufgerufen werden
können.
Um ein JavaScript in eine HTML-Seite einzubinden, benutzt man den
Script-Tag unter Angabe der Language-Option. Das
JavaScript-Programm ist also von <SCRIPT
LANGUAGE="Javascript"> und </SCRIPT>
eingeschlossen.
Bsp.:
Der Übersichtlichkeit wegen sollten JavaScript-Programme am
besten im <HEAD>-Teil der HTML-Seite untergebracht werden.
Damit nicht bei Browsern die kein JavaScript unterstützen keine
unerwarteten Ergebnisse anzeigen, wird das Script-Programm (siehe
Beispiel) mit <!-- und //-> auskommentiert.
Der Funktionsumfang ist groß genug, um Laufschriften,
Animationen, Geschäftsgrafiken, zeitabhängig gestaltete
HTML-Seiten und Kurscharts zu entwerfen. Der größte Nachteil
von JavaScript ist, daß der Programmcode jederzeit gelesen und
kopiert werden kann.
Obwohl es nicht möglich ist direkt auf den Massenspeicher der
Clients zuzugreifen, kann es trotzdem notwendig sein, sich
bestimmte Informationen über Aktionen eines Besuchers auf der
Website zu merken. Beispiele hierfür wären Bestellformulare und
Passwörter. JavaScript löst dieses Problem mit Cookies, kleinen
Zeichenketten, die über den Browser beim Client abgelegt werden
können:
Zur Laufzeit des Browsers werden die Cookies im Arbeitsspeicher
des Clients gehalten, wird der Browser geschlossen, legt er
diesen "Krümel" auf der Festplatte ab (Netscape
speichert bspw. Cookies in der Datei 'cookies.txt'.). Bei jedem
erneuten Login werden die Cookie-Inhalte automatisch an den
Server der Website übertragen, die ihn angelegt hat.
Da JavaScript auf dem Client ausgeführt wird, kann der Server entlastet werden. Für die Verwendung von JavaScript spricht ausserdem die Verfügbarkeit, nahezu jeder Browser unterstützt heutzutage mehr oder weniger JavaScript, das ist bei Visual Basic nicht der Fall.
Hier ein kurzer Vergleich von Java und JavaScript:
Java | JavaScript |
|
|
Visual Basic Script (VBScript) wurde von Microsoft als
Reaktion auf Javascript entwickelt. VBScript ist
abwärtskompatibel zum Microsoft Visual Basic Programmiersystem.
Microsoft hat VBScipt für 32 Bit Windows Betriebssysteme
(Windows95, Windows NT),Windows 3.1 und für den Macintosh
realisiert. VBScript kann dann in allen Anwendungen ablaufen, die
diese Funktionalität unterstützen. Das Haupteinsatzgebiet wird
in WWW-Browsern gesehen. Durch VBScript wird es Visual Basic
Entwicklern ermöglicht, "aktive" HTML-Seiten und
Client/Server Applikationen zu entwerfen.
VBScript hat einen geringeren Funktionsumfang als Visual Basic
for Applications, welches wiederum einen geringeren
Funktionsumfang als Visual Basic hat. Visual Basic Script ist wie
oben erwähnt weit weniger verbreitet als JavaScript.
Als eine Technologie für ausführbaren Programmcode auf
WWW-Seiten erhebt ActiveX den Anspruch eine Alternative zu Java
zu sein. ActiveX ist ein Überbegriff für verschiedene
Software-Komponenten, die alle auf dem sogenannten Component
Object Model (COM) basieren. Es ist allerdings kein
Internet-Standard, sondern dient dazu spezielle Eigenschaften des
MS-Windows-Betriebssystems für Websites nutzbar zu machen.
(Bsp.: Eingaben aus HTML-Formularen über OLE-Schnittstelle in
Excel-Tabelle einlesen.)
Es gibt Bestrebungen Lösungen für Unix- und Macintosh-Anwender
anzubieten, eigentlich konzipiert war und ist es jedoch für
MS-Windows.
Wichtigster Bestandteil sind die sog. ActiveX-Controls. Das sind Programme oder Programm-Module, die sich, ähnlich wie Java-Applets, in HTML-Seiten einbinden lassen. Der Programmcode wird im Arbeitsspeicher des Clients ausgeführt, es wird in der Regel auch eine ActiveX-Layoutdatei auf dem Rechner des Anwenders (im Windows-Verzeichnis) angelegt. Mit ActiveX-Controls können Spiele, Dialoge oder Animationen auf WWW-Seiten implementiert werden. Es gibt keine Vorschrift in welcher Programmiersprache ActiveX-Code geschrieben ist, der Compiler muß jedoch COM unterstützen. Dabei kommt vor allem die MS-Sprache "VBScript (siehe oben) zum Einsatz. Mit Hilfe des ActiveX Layout Control Pads kann man ohne Programmierkenntnisse einfache ActiveX-Controls erstellen. Für anspruchsvollere Anwendungen ist jedoch immer noch Programmiererfahrung gefragt.
Ein Manko: Derzeit führt nur der Internet Explorer von
Microsoft ActiveX direkt aus, Netscape-Anwender können sich mit
einem ActiveX-Plugin behelfen.
Entgegen anders lautender Statements von Seiten Microsofts hat
ActiveX erheblich Sicherheitsmängel, bspw. kann es sich
script-fähiger Komponenten anderer Programme, wie z.B. der
Norton Utilities 2.0 bedienen. Hierdurch ist nicht nur die
Möglichkeit des Zugriffs auf den Massenspeicher der Clients
gegeben, es ist sogar möglich Daten mit dem FORMAT-Befehl von
DOS zu löschen.