5.1 Implementierung der Java-Applets

Warum Java?

Zum einen ist die Frage damit zu beantworten, daß dies in der Aufgabenstellung dieser Arbeit gefordert ist. Zum anderen ist zu sagen, daß Java die Programmiersprache ist, deren Programme sich am einfachsten in HTML-Seiten einbinden lassen. Außerdem lassen sich diese Programme auf vielen unterschiedlichen Betriebssystemen ausführen.

Warum Java 1.2?

Viele Leser werden es umständlich finden, extra zu ihrem Internetbrowser noch das PlugIn zum Ausführen der in dieser Seite integrierten Applets zu installieren. Und zusätzlich stellt sich die Frage, warum diese Applets nicht in einer Version von Java programmiert worden sind, die die meisten Internetbrowser direkt unterstützen.

Dazu ist zu sagen, daß die hier verwendete Version 1.2 von Java sehr viele neue Funktionen beinhaltet, die von den Applets genutzt werden. Gerade für das Zeichnen der Graphen bot dies die Möglichkeit, diese egal in welcher Größe, ohne Treppchenblidung und ohne Lücken auszugegeben. So sind alle hier präsentierten Applets ohne Probleme an die zur Verfügung stehenden Bildschirmfläche anzupassen. Weiter ließ sich eine sehr flexible Kassenbibliothek aufbauen, die so als Plotter für beliebige Graphen dienen kann, und ohne großen Aufwand an andere Ausgabegeräte, wie zum Beispiel einen Drucker, angepaßt werden könnte.
Auch die zusätzlichen Bedienelemente Buttonleiste und HTML-Viewer der Version 1.2 bieten hier den kompfortablen Umgang mit den Applets.

Weiter muß erwähnt werden, daß mittlerweile für viele Betriebssysteme Virtuelle-Maschinen für die Version 1.2 zur Verfügung stehen. Und für weitere sind diese angekündigt. Auch zeichnet sich ab, daß die Browser nur noch eine Schnittstelle für eine belibige Virtuelle-Maschine (VM) zur Verfügung stellen, und nicht mehr für die so rasante Java-Entwicklung eigene Implementierungen einbauen. D.h., daß es in der Zukunft üblich sein wird, eine Java-VM, so wie jetzt das PlugIn, zusätzlich zum Browser zu installieren.

Details zur Implementierung

Wie oben angedeutet, bestehen die Applets im wesentlichen aus dem Koordinatensystem für die Graphen. Dieses Koordinatensystem ermöglicht es, jeden Graphen zu zeichnen, der ein gewisses Interface implementiert. Dabei ist die Implementierung dieses Interfaces völlig unabhängig davon, ob die Darstellung affin oder perspektivisch erfolgt. Die notwendigen Transformationen nimmt das Koordinatensystem vor.
Die Implementationen der Graphen sind im Fall der elliptischen Kurven so erweitert, daß diese für übergebene Koeffizienten die Punkte des Graphen selber berechnen. Weiter können sie die die Additionen von Punkten, die auf diesem Graphen gewählt wurden, berechen. Gegebenenfalls werden zu den Ergebnissen der Addition auch die Linien zur graphischen Ermittlung der Addition als zusätzlicher Graph erzeugt.

Die Grundlagen für die Addition von Punkten auf einer elliptischen Kurve ist in den vorherigen Kapiteln ausreichend erklärt worden und soll hier nicht weiter vertieft werden, denn die Implementierung ist analog zu den gerechneten Beispielen und erwähnten Fallunterscheidungen erfolgt. Weiter ist die Implementierung der Applets nur zur ergänzend Veranschaulichung der beschriebenen Zusammenhänge erfolgt, und nicht als zentrales Ziel der Diplomarbeit.

Anleitung mit Beispielen

Jedes Applet dieser Seite verfügt über einen Hilfe-Button, der eine kurze Funktionsbeschreibung und ggf. ein Beispiel für eine sinnvolle Vorgehensweise in einem neuen Fenster anzeigt. Dieser Button befindet sich oben rechts in der Button-Leiste und ist mit diesem Symbol gekennzeichnet.

Quellcode und Klassenreferenz

Auf der beiliegenden CD befinden sich die Sourcen und die Klassenreferen im Javadoc-Format zu den in dieser Seite enthaltenen Java-Applets.

/CD-Laufwerk  
  /sourcen/ Quellcode zu den Programmen
  /javadoc/ Klassenreferenz
  /java/ec/eccTutorial.jar Übersetzte Version der Applets als Application. Zum Starten der Anwendung sei in den Java-FAQ nachgelesen.

Entwicklungstools

Die Applets wurden und Windows NT mit der Klassenbibliothek der Version 1.2.2 von Sun entwickelt. Also Compiler wurde der 'jikes' von IBM eingesetzt, das Nativ-Version für Win32 Systeme zur frei zur Verfügungs steht. Er ist wesentlich schneller als das von Sun ausgelieferte 'javac' und bietet mehr als doppelt so schnelle Compiler-Zyklen. Allerdings ist der Source-Code auch mit dem Sun's 'javac' ohne Fehler und Warnmeldungen zu Übersetzen.
Als Virtuelle-Maschinen unter Windows NT 'java' von Sun eingesetzt und unter Linux die Virtuelle-Maschine von Blackdown.
Kawa 2.23 von tek-tools wurde als IDE eingesetzt. Dieses Entwicklungswerkzeug ist unabhängig vom Compiler und der Virtuellen-Maschiene. Es ist lauffähig unter Win32 und steht Stuedenten drei Monate kostenlos zur Verfügung.

 

zum Anfang | Home
Copyright 1999 by Thomas Laubrock
Zurück zur letzen Seite nächste Seite