Sie sind hier:  AIB V3 > PC-Wissen > Internet & eMail > Dienste > Java, JS, Flash 

Java, Javascript, VRML, Flash etc.

Die Entwicklung der WWW-Browser schritt in den letzten Jahren rasant voran. Was mit der einfachen Darstellung von Texten mit der Einbindung von Multimedia-Elementen begann, entwickelt sich heute in Richtung 'virtuelle Realität' mit dreidimensionalen Darstellungen, Animationen und mehr.

Java

Mit Java hat SUN Microsystems etwas Neues geschaffen. Es können nun mit einer WWW-Seite nicht nur Text, Bilder, Sounds oder Animationen an den eigenen Rechner geliefert werden, sondern Programme, die lokal ablaufen. Statt beispielsweise ein Diagramm als Grafik zu senden, wird nun ein Diagramm-Zeichenprogramm mit den Daten geschickt. Um dann die Änderung der Daten kontinuierlich zu zeigen, müssen nun nur noch wenige Daten gesendet werden. Java ist eine richtige Programmiersprache, die an die Sprache C++ angelehnt ist. Wenn man im Browser eine Seite mit einem Java-Programm wählt, wird dieses Programm übertragen und dann von lokalen Browser ausgeführt.
Der Ansatz für Java entstand noch unter der Prämisse, Java auf intelligenten Peripheriegeräten, z. B. beim interaktiven Fernsehen, einzusetzen. Eine logische Konsequenz daraus war der Wunsch nach Vereinfachung gegenüber existierenden Technologien und nach geringem Ressourcenverbrauch. C++ wurde daher schon recht früh als Programmiersprache verworfen. Um aber den Aufwand des Umstiegs für C-, Smalltalk- und Eiffel-Programmierer gering zu halten, entlehnt Java zum Teil deren Konzepte und legt die C++-Syntax zugrunde. Wichtige Unterschiede zwischen Java und C++ sind die Eliminierung der 'herkömmlichen' Zeiger, der zusammengesetzten und der vorzeichenlosen Datentypen. Neu (zumindest gegenüber C++) sind 'sichere' Arrays und vor allem ein Garbage Collector, der Speicherbereiche, die nicht mehr referenziert werden, automatisch freigibt. Die Java-Programme werden in ein kompaktes Format übersetzt, den Bytecode. Das ist an sich nichts neues, prinzipiell gab es das schon seit ca. 20 Jahren bei den BASIC-Interpretern der Heimcomputer. Im Java-fähigen Browser ist dann ein Interpreter für diesen Bytecode enthalten.
Der Interpreter überprüft den Bytecode vor der Ausführung auf unerlaube Zugriffe auf Ressourcen. Auf diese Weise sind zwei Ausführungsmodi möglich: Einem lokal gestarteten Java-Applet (so nennt man die Java-Programme) kann der Benutzer den Zugriff auf den Rechner erlauben. Aus dem Netz geladene Applets behandelt Java dagegen äußerst mißtrauisch. Sie sind quasi in den Interpreter eingesperrt und verwenden genau definierte und vom Benutzer kontrollierte Möglichkeiten, beispielsweise auf die Festplatte zu schreiben. Zusätzlich wird jedes Applet vor und während der Ausführung auf korrekte Benutzung der Methoden und Instanzvariablen, mißbräuchliche Benutzung von Objektreferenzen, Stack-Überläufe und Zugriffsbeschränkungen getestet. Auch das Überschreiben von als sicher akzeptierten Klassen aus der lokalen Klassenbibliothek durch potentiell gefährliche Klassen aus dem Netz ist nicht ohne Erlaubnis des Benutzers möglich. Dies kann soweit gehen, daß der Benutzer jedes Laden einer externen Klasse bestätigen muß.
Für grafische Oberflächen, Ein-/Ausgabe, mathematische Operationen und Netzwerkfunktionen existieren vordefinierte Klassen. Ein Java-Programmierer muß nicht gleich alles wissen, die Einarbeitungszeit ist unter Java viel kürzer als unter C++. Ein Beschränkung der Programmiersprache auf spezielle Anwendungsgebiete ist (theoretisch) nicht vorgegeben. Was die Entwicklung vollwertiger Stand-alone-Programme angeht, gilt für Java jedoch das gleiche wie für andere plattformübergreifende Bibliotheken: es ist nur der 'kleinste gemeinsame Nenner' implementiert.

Für Java-Code, der in einem Web-Browser ablaufen soll, dient die Klasse 'Applet' als Ausgangspunkt. Im HTML-Code werden die Java-Klassen durch das <applet>-Tag eingebettet. 'Applet' definiert als Superklasse für alle Applikationen, die in Browser eingebettet werden sollen, auch einen Eventhandler für Benutzereingaben. Die wichtigsten Methoden für ein Applets sind die Initialisierung, Aktivierung der Anzeige, Deaktivierung der Anzeige und das Terminieren. Der Programmierer definiert in diesen Methoden das Verhalten des Applets auf der Seite. Gemäß dem 'Java-Knigge' sind Applets so zu programmieren, daß sie nur dann Rechenzeit beanspruchen, wenn die umgebende HTML-Seite angezeigt wird. Mit Java lassen sich auch komplette Bedienoberflächen programmieren. Die Möglichkeit, mit einem Mausklick ein Applet zu stoppen und wieder anzustarten, runden die Vorschriften ab. Um nicht den Browser mit der Interpretation des Applets zu blockieren und auch mehrere Applets simultan in einer HTML-Seite animieren zu können, sind Threads bereits Grundausstattung der Java-Laufzeitumgebung.
Wer sich für Java interessiert, findet Java-Seiten mit vielen Demos, den HotJava-Browser (für SUNs) und Java-Entwicklersoftware auf dem Server von SUN Microsystems unter http://java.sun.com/. Die Entwicklertools für Java-Applikationen stecken noch in den Kinderschuhen und sind zwar mächtig in der Leistung, aber noch recht unkomfortabel in der Bedienung.

JavaScript

JavaScript ist eine Script-Sprache mit begrenzten Fähigkeiten. Sie hat im Grunde mit Java nur einen Namensteil gemeinsam. JavaScript ist eine von Netscape entwickelte Programmiersprache. Die Sprache lehnt sich in der Syntax an die von Sun Microsystems entwickelte Programmiersprache Java an. JavaScript ist jedoch anspruchsloser im Aufbau als Java, eingeschränkter in den Möglichkeiten und für andere Zwecke gedacht. JavaScript ist im Gegensatz zu Java eine unmittel-bare Ergänzung und Erweiterung zu HTML. JavaScript bietet sich für folgende Zwecke an:
  • Animation (z. B. Marquees = Lauftexte programmieren) und in WWW-Seiten einbinden. Dabei steht Ihnen nicht nur das Anzeigefenster zur Verfügung, sondern auch Dialogbereiche des WWW-Browsers, etwa die Statuszeile.
  • Projektsteuerung: Mit Hilfe von JavaScript lassen sich einige Lücken in HTML umgehen. So ist es mit Hilfe von Ja-vaScript beispielsweise möglich, innerhalb eines Frame-Sets die Inhalte mehrerer Frame-Fenster gleichzeitig zu aktualisieren.
  • Formularüberprüfung: Überprüfen der Anwendereingaben in einem HTML-Formular während der Eingabe
  • Dynamische WWW-Seiten: Mit Hilfe von JavaScript läßt sich erreichen, daß sich WWW-Seiten während der Anzeige dynamisch verhalten. Beispielsweise Wechsel eines Bildmotivs, wenn sich die Maus über das Bild bewegt.
  • Text generieren: Zur Laufzeit HTML-formatierten Text generieren, z.B. das aktuelle Datum und die aktuelle Uhrzeit anzuzeigen.
  • Anwendungen: Mit Hilfe von JavaScript lassen sich einfache Anwendungen programmieren. Das können z.B. wissenschaftliche oder kaufmännische Taschenrechner sein. Auch einfache Spiele sind denkbar.
JavaScript-Programme werden im Gegensatz zu Java-Programmen direkt in der HTML-Datei notiert. Sie werden auch nicht - wie Java-Programme - compiliert, sondern als Quelltext zur Laufzeit interpretiert, also ähnlich wie Batchdateien bzw. Shellscripts.
Dadurch bleibt JavaScript unkompliziert für den Programmierer, doch kritisch für den Anwender. Das Interpretieren von Quellcode ist ungleich langsamer als das Interpretieren von compiliertem Code. Deshalb ist JavaScript nur für kleine und einfache Programmabläufe sinnvoll. Da kein Compilierungslauf und somit keine Fehlerprüfung stattfindet, gibt es bei JavaScript auch keinen Schutz vor schweren Programmfehlern.
Kleine Effekte, wie das bekannte Ändern des Erscheinungsbildes eines grafischen Elements, wenn die Maus darüber bewegt wird, lassen sich jedoch schnell realisieren.

VRML

Zur Beschreibung der WWW-Hypertext-Dokumente dient, wie erwähnt, eine Sprache namens HTML (HyperText Markup Language). Eine faszinierende Erweiterung für 3D-Grafiken ist die Beschreibungssprache VRML (Virtual Reality Modeling Language). Statt riesiger Animationsdateien werden auch hier nur Anweisungen geschickt, wie eine dreidimensionale Animation aussehen soll. Die so definierten Animationen werden dann auf dem lokalen Rechner erzeugt. Im Grunde ist dies keine grundlegende Neuerung, denn jedes Raytracing-Programm arbeitet mit einer solchen 3D-Sprache. Die Software berechnet anhand der Beschreibung die jeweilige Szenerie und stellt sie grafisch auf dem Bildschirm dar. VRML wird derzeit speziell auf die Bedürfnisse von WWW und Internet zugeschneidert, verfügt daher über spezifische Fähigkeiten, etwa die Einhindung von HTML-Dokumenten in 3D-Szenen. Die Entwicklung von VRML begann im Frühjahr 1994. Der Name VRML wurde damals geboren, allerdings noch als 'Virtual Reality Markup Language'.

Um nicht bei Null zu beginnen und statt dessen eine geeignete, bereits vorhandene 3D-Technologie zu nutzen, fiel die Wahl der Entwickler auf 'Open Inventor' von Silicon Graphics (SGI). Open Inventor unterstützt 3D-Szenarien mit Polygonobjekten, verschiedenen Belichtungsmöglichkeiten, Materialien oder Texturen. Zudem stellte SGI noch eine erste VRML-Parser-Library zur Verfügung, die als Grundlage für die Implementierung von 3D-Viewern diente.

Flash

Derzeit letzter Endpunkt der Technik auf Webseiten ist Flash. Web-Entwickler verwenden Flash zum Erstellen von attraktiven, auf Browsergröße anpassbaren, extrem kleinen und kompakten Navigations-Oberflächen, technischen Illustrationen, Langform-Animationen und sonstigen faszinierenden Effekte für Websites und andere Web-aktivierte Geräte (wie WebTV). Flash-Grafiken und -Animationen werden mit Hilfe der Zeichenwerkzeuge in Flash oder durch Importieren von Vektor-Grafiken erstellt. Flash unterstützt nicht nur Vektorgrafiken, die im Gegensatz zu Pixelgrafiken (GIF, JPEG, PNG, BMP, usw.) bei einer Skalierung (Vergrößerung oder Verkleinerung) ihr exaktes Aussehen behalten. Alle in Flash 4 erstellen Grafiken erscheinen auf dem Bildschirm nahtlos und glatt. Dank dieser Anti-Aliasing-Technik wirken die Designs immer ganz genau so, wie von ihrem Entwickler beabsichtigt. Zusätzlich unterstützt Flash Streaming-Verfahren. Damit lassen sich Animationen aller Art in WWW-Seiten einbinden - und nicht nur Zeichentrick-Filmchen, oder Textanimation, sondern auch Navigationselemente wie Schaltflächen und Menüs. Zur Bildanimation können dann noch die passenden Sounds hinzugefügt werden. Vektorbasierte Flash-Sites werden bereits beim Herunterladen abgespielt und machen so ein unmittelbares Feedback möglich. Flash eignet sich auch für Produktpräsentationen und ähnliche Aufgaben. Die Animationen lassen sich auch in gängige Videoformate (AVI, MPEG) umsetzen.


Copyright © Prof. Jürgen Plate, Fachhochschule München
Spam-Server "Grum" abgeschaltet

Für alle die sich schon immer über zuviel Spam im Postfach geärgert haben gibt es eine gute...

TYPO3 Version 4.7 verfügbar

Die finalen Version des TYPO3 CMS Version 4.7 ist veröffentlicht worden. In TYPO3 4.7 wurde...

Schleusingen jetzt mit UTMS versorgt

In Schleusingen ab sofort mit bis zu 42,2 Megabit pro Sekunde im Internet surfen....

neuer RC TYPO3 4.7 veröffentlicht

Der neue Release-Kandidat 2 von TYPO3 4.7 wartet mit einer Vielzahl neuer Funktionen auf, außerdem...

TYPO3 4.4.12, 4.5.8 und 4.6.1 sind online

Heute wurde bekannt gegeben, dass ab sofort TYPO3 4.4.12, 4.5.8 und 4.6.1 zur Verfügung stehen. Es...

Das Hennebergische Gymnasium Schleusingen hat eine neue Website !

Nach langen Wochen der Erstellung und Redaktionsschulung ist die neue Website www.gym-schleusingen...