Java - eine Programmierpsprache
Hier ist das Original für Linux, Win32 und SolarisProjekt Visualisierung von Algorithmen
Was ist Java?
Wie ich in der Überschrift schon erkläre, meine ich die Programmiersprache von Sun.
Java ist fast eine vollwertige Programmiersprache. Man kann auch fast alles mit ihr programmieren. Und die Programme sind auf fast allen Systemen ohne Neucompilierung ausführbar.
Nun ein wenig genauer
Java ist fast eine Interpretersprache. Nun werden viele von denken: "Ist das nicht schrecklich langsam?" Nein! Das "fast" ist das Neue an Java. Java interpretiert keinen Quellcode sondern einen Bytecode. Dieser sieht auf den ersten Blick aus, wie Maschinencode. Er ist es auch, aber nur für die Virtuelle Java Maschine. Dieser Bytecode muß natürlich nicht vom Programmierer geschrieben werden. Er wird vom Java-Compiler erzeugt. Der Interpreter führt ihn dann aus, indem er die systemspezifischen Befehle ausführt. Es wird seit einiger Zeit von einem Java-Chip gesprochen, dessen Maschinencode dem Java-Bytecode entsprechen soll. Damit würde Java dann doch schon wieder eine Compilersprache werden. Es gibt nun auch schon seit einiger Zeit sogeanannte Just-In-Time Compiler. Diese setzen den Bytecode vor der ersten Ausführung in Maschinencode des jeweiligen Systems um. Bei wiederholter Ausführung des Codes kommt es zu extremen Geschwindikeitsvorteilen gegenüber den Interpretern.
Mit dieser Technologie hat man nun die Möglichkeit, weitestgehend plattformunabhängig zu programmieren. Dies hat große Vorteile in heterogenen Umgebungen. Und - ein jeder wird sie schon gesehen haben - man kann damit Applets schreiben. Applets sind kleine Java-Programme, die nur innerhalb einer dafür vorgesehenen Umgebung existieren können. Diese Umgebung (oft ein Browser) legt fest, was das Applet so alles machen darf. Eingeschränkt ist beispielsweise der Festplattenzugriff oder die Abfrage bestimmter Nutzerinformationen. Im Standardfall werden diese Einstellungen sehr restriktiv vom Browser gesetzt - man muss also keine Angst vor Sicherheitsproblemen haben. Im Gegensatz zu - beispielsweise - Active-X-Components, handelt es sich ja noch immer um interpretierten Bytecode, der genau überwacht werden kann. Braucht das Applet mehr Rechte, dann wird es sich an den Nutzer wenden. Dies geht aber nur mit Applets, die digital signiert wurden.
Was sollte man haben, wenn man Java programmieren will?
- Das Java SDK (Java Software Development Kit)
- Die API-Dokumentation (Auflistung der Klassen des JDK)
- Das JDK Tutorial (Eine ausgezeichnete Einführung in die Programmierung)
- Eine IDE
- Es gibt dutzende IDEs für Java (viele auch kostenfrei). Da ich aber selbst kein Frund von Klick-Bunti-Programmierung bin, habe ich mich seit einigen Jahren schon nicht mehr damit befasst. Eclipse ist wohl mittlerweile das Standardtool schlechthin.
- Linux-Nutzer nehmen natürlich vi ;-)
Von mir durchgeführte Vorträge
- Java und Netzwerk-Kommunikation (Vortrag vor der CLUG)
- Kurze Java-Einführung (Einleitung beim ViA-Projekt)
- Java-Kurs für das URZ
- Java-Kurs für das URZ - Version 2000
- Java-Kurs für das URZ - Version 2001
Einige Newsgroups zu Java
Newsgruppen zum Thema Java finden sich unter comp.lang.java.*