next up previous contents
Next: 3.2.2 Das Konzept des Up: 3.2 Das Java Dynamic Previous: 3.2 Das Java Dynamic

3.2.1 Die Sprache Java

  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 up previous contents
Next: 3.2.2 Das Konzept des Up: 3.2 Das Java Dynamic Previous: 3.2 Das Java Dynamic
Copyright Munich Network Management Team