Next: 3.2.2 Das Konzept des
Up: 3.2 Das Java Dynamic
Previous: 3.2 Das Java Dynamic
Die von der Firma SUN entwickelte Programmiersprache Java hat sich in
vielen Bereichen als Standardsprache durchgesetzt. Auch bei den
unterschiedlichen Agentensystemen (Voyager, Aglets, JumpingBeans, ...)
gibt es kaum noch aktuelle Versionen, die nicht in Java geschriebene
Agenten unterstützt.
In einer der ersten Beschreibungen der Sprache benutzte die Firma Sun
folgende Aneinanderreihung von Schlagworten [Flan 98]:
Java: A simple, object-oriented, distributed, interpreted,
robust, secure, architectural neutral, portable, high-performance,
multithreaded and dynamic language .
Im folgenden werden die wichtigsten Attribute kurz erläutert.
Java ist eine moderne, objektorientierte Programmiersprache, bei der
die Quelltexte vor der Ausführung in schnell und effizient zu
interpretierenden Bytecode übersetzt werden. Der Compiler, der
Debugger und der größte Teil der Ausführungsumgebung sind selbst in
Java geschrieben. Nur ein kleiner maschinenabhängiger Teil des
Interpreters ist an die jeweilige Plattform gebunden. Dieser
Interpreter, auch virtuelle Maschine genannt, ist für alle bekannten
Plattformen frei verfügbar und kann selbst Programme mit grafischer
Benutzeroberfläche auf jeder Plattform ausführen.
Da die Bytecode-Sequenzen interpretiert werden, liegt die
Ausführungsgeschwindigkeit deutlich unter der anderer Sprachen wie
z.B. C oder Fortran. Daher gibt es auch die Möglichkeit, den Bytecode
kurz vor der Ausführung in direkt durch den Prozessor ausführbaren
Code zu übersetzen. Dazu wurden sogenannte Just-in-Time Compiler
(JIT) entwickelt, die allerdings bis heute für relativ wenige
Plattformen verfügbar sind.
Java bietet das praktisch gleichzeitige Ausführen mehrerer
Programmfäden an, sog. Threads. So können in Java realisierte
Agentensysteme z.B. gleichzeitig mehrere Agenten ausführen und die
Kommunikation regeln. Mit dem Exception-Handling bietet Java einen
mächtigen und erweiterbaren Mechanismus zur Fehlerbehandlung.
JavaBeans ist ein Software-Komponenten-Modell für Java. Die
JavaBeans API-Spezifikation definiert ein Bean wie folgt:
Ein JavaBean ist eine wiederverwendbare Software-Komponente, die
visuell mittels eines Entwicklungstools manipuliert werden kann. In
der JavaBeans API sind eine Reihe von Namenskonventionen vorgegeben,
die die Wiederverwendung erleichtern.
Die Entwicklung von Java ist noch längst nicht abgeschlossen. So
wurde noch während der Erstellung dieser Arbeit die Version 1.2 des
Java Development Kit freigegeben. Zwar wurde an der Syntax nichts
geändert, jedoch wurden zahlreiche Erweiterungen in Bezug auf die
Sicherheit und das GUI implementiert. Da diese neue Version allerdings
mit dem JDMK3.0 nicht kompatibel ist, wurde sie im Rahmen dieser
Arbeit nicht eingesetzt.
Der durchschlagende Erfolg von Java wird allerdings nicht nur auf die
Eigenschaften der Sprache an sich zurückgeführt, sondern auch auf
die umfangreichen und standardisierten Klassenbibliotheken, die mit
dieser Sprache verbunden sind. So gibt es nicht nur Klassen, die
unterschiedlichste Datentypen und Algorithmen zu Verfügung
stellen. Auch sind zum Beispiel die Entwicklung von grafischen
Benutzeroberflächen mit den unterschiedlichsten Komponenten, der
Zugriff auf Datenbanken und CORBA-Mechanismen mit Hilfe umfangreicher
Klassen leicht realisierbar.
Das Java Dynamic Management Kit (JDMK) stellt eine der neuesten
Erweiterungen dar.
Next: 3.2.2 Das Konzept des
Up: 3.2 Das Java Dynamic
Previous: 3.2 Das Java Dynamic
Copyright Munich Network Management Team