5 Schluß
5.1 Entwicklungschancen
Java wird in absehbarer Zeit weder C/C++ noch Pascal/Delphi ablösen können.
Auf eine brauchbare Office-Suite,
die komplett in Java geschrieben ist (von Lotus angekündigt),
wird sicher noch länger gewartet werden
müssen. Die Firma Star*Division aus Hamburg hat inzwischen ihr Star-Office
zumindest Clientseitig in Java programmiert, der Kernel auf dem Server ist aber noch
vollständig in C/C++ implementiert. Wie erstaunlich diese Leistung ist, zeigt sich erst
bei weiterer Betrachtung - das Clientseitige Java-Applett ist kleiner als 100kb und das Kernel kann
(zumindest theoretisch) beliebig viele Benutzer verwalten. Die Vorstellungen der Java-Entwickler konnten
also erstmals in diesem Programm vollständig verwirklicht werden. Es ist zugleich der Beweis für
die Überlegenheit Javas gegenüber C/C++ in Netzwerken!
Allseits beliebte 3D-Spiele jedoch werden als Java-Applikation den
Geschwindigkeitstest kaum bestehen. James Gosling (der Chefentwickler der
Sprache) meint, daß `Java zugleich über-, als auch unterschätzt
wird`. Unterschätzt, weil Java viel mehr ist als ein Web-Tool;
überschätzt, weil Java noch nicht die Reife eines C++
hat. Das Interessante dabei ist, daß noch nie mit solchem Hochdruck
an einer Sprache entwickelt wurde, das Investitionsvolumen ist
gewaltig. Im November 1996 wurde von IBM, Oracle, Netscape und
natürlich SUN ein Risikofond gegründet, der der Verbreitung
von Java dienen soll. Es wurden 100.000.000 Dollar für Firmen
zur Verfügung gestellt, welche Java unterstützen.
Auf praktisch jeder Universität (mit einem entspr. Institut)
werden Vorlesungen zu Java gehalten. Apple, Hewlett-Packard, Hitachi,
IBM, Microsoft, Novell, Silicon Graphics, SUN wollen Java in ihre
Betriebssysteme integrieren, was vielen schon in den jeweils aktuellen Versionen
gelungen ist. Microsoft hat erst kürzlich angekündigt: `Windows würde DIE Java-Plattform werden`,
aber in dem erst vor wenigen Monaten veröffentlichten WindowsNT
V4.0 war davon praktisch nichts zu bemerken. Auch die ActiveX-Offensive des
Software-Primus Microsoft im Sommer/Herbst ´96 hat daran
wenig geändert. Sicherheitsaspekte wurden bei ActiveX praktisch ganz außer acht gelassen
und tatsächlich sind im Internet ActiveX-Komponenten verfügbar, welche nach belieben
Plattenzugriffe vornehmen können und das auch tun! Wären solche
Manipulationen mit dem Äquivalent Java-Beans möglich, gäbe es
sicherlich auch schon eine entsprechende Seite, abgesehen davon, das SUN
sofort den Fehler behoben hätte (wie auch bei dem JDK). Gleichzeitig
mit der Java-Beans Spezifikation wurde im übrigen eine CORBA-Lösung
von SUN präsentiert (`SUN-Joe`). Im Rahmen dieses Seminars
dürfte dieser Begriff des öfteren Fallen, weshalb hier
eine weitere Erläuterung nicht angebracht, ist und den Rahmen
sprengen würde.
Wie die Java-Entwicklung jetzt letzenendes
weitergeht ist nur schwer abzuschätzen. Erstes Ziel ist wohl
das Verfügbarmachen einer ausgereiften Komponententechnologie/Klassenbibliothek.
Es ist fraglich ob die diversen Firmen lange genug durchhalten
diesen steinigen Weg zu gehen, es gilt 25 Jahre Erfahrung mit
C/C++ aufzuholen, wobei man jetzt natürlich auf Erfahrungen
eben mit C/C++ zurückgreifen kann.
Das Java nicht nur ein
gewaltiges Werbespektakel ist, hat sich wohl schon gezeigt, es
steckt bereits zuviel Geld in der Entwicklung (Stichwort NetComputer,
Java-Prozessoren, IBM-Tazza usw.). Ebenso ist unwahrscheinlich,
das noch eine andere Objekt-Technologie, ähnlich wie Java
den Markt genauso überschwemmt. Es gibt zwar vergleichbare
Produkte, z. B. von der AT&T-Tochterfirma Lucent Technologies
mit Namen Inferno, doch das letzte Jahr hat Java einen Vorsprung verschafft,
der keine Firma dazu bringen dürfte, auch noch eine zweite fast
identische Technologie voranzubringen?!
Um es deutlich zu machen: Java bietet eigentlich
keine wirklich revolutionären Neuerungen. Angefangen bei
der Garbage-Collection (erstmalig in LISP genutzt, ca. 1960)
bis zur Syntaxähnlichkeit (C/C++ - 1970)
ist alles aus anderen Technologien überführt worden.
Plattformunabhängigkeit ist keine Technologie sondern ein
Problem, welches spätestens seit dem Bau des `zweiten Computers`
definiert ist. Die Plattformunabhängigkeit dürfte der
Hauptgrund für die Popularität Javas in Entwicklerkreisen
sein. Die Logik ist einfach - warum sonst sollte man schon jetzt
Java einsetzen? Doch nur um einen Entwicklungsvorsprung zu erreichen
- denn wenn irgendwann die Plattformunabhängig vollständig
realisiert ist, wird der Markt gewaltig kleiner.
Wenn keine Plattformunabhängigkeit
gefordert ist, warum umsteigen? Es gibt für jedes System
professionelle Entwicklungsumgebungen, die Java noch um Jahre
voraus sind.
Wie in Kapitel1 erwähnt, wird Java, nach den Vorstellungen der Entwickler, das
Network-Computing völlig revolutionieren. Diese Entwicklung
steckt noch in einem sehr frühen Stadium und eine Abschätzung
muß jeder Entwickler/jede Firma selbst vornehmen. SUN arbeitet
ja erst noch an den Spezifikationen und SUN definiert die Sprache,
niemand sonst. Da diese Arbeit bis jetzt hervorragend erledigt
wurde, weniger durch vollmundige Ankündigungen als mit handfesten
Veröffentlichungen, besteht kein Grund zur Klage. Java bietet
in jedem Fall die Möglichkeiten die Netz-Revolution zu schaffen. Die Sprache
ist ein Kompromiß aus allem `guten`, was die Informatik hervorgebracht
hat, oder zumindest ein sehr sehr guter Ansatz in diese Richtung.
Ob sie mit diesen Vorraussetzungen auch tatsächlich `zur
Krone der Informatik` wird, muß sich zeigen.
5.2 Support
5.2.1 Literatur
Literaturverweise:
[1] James Gosling/Henry McGilton: The Java Language Environment -
A White Paper; SUN Microsystems 1995 (zur Textstelle)
[2] David Flanagan (dt. von Konstantin Agouros): Java in a Nutshell
(deutsche Ausgabe); 1. Auflage im O`Reilly-Verlag 1996; ISBN: 3-930673-460
(zur Textstelle)
[3] wie [2] (zur Textstelle)
[4] Svend Back: Esperanto für Computer; In: Software-Entwicklung -
AWi-Verlag Grasbrunn, 6/96, S. 20 (zur Textstelle)
[5] Reinald Menge: Eine Reise nach Java; In: Software-Entwicklung -
AWi-Verlag Grasbrunn, 11/96, S. 61 (zur Textstelle)
Bücher:
- Objektorientierte Software-Entwicklung
von Heike Jansen und Manfred Bundschuh im Oldenbourg-Verlag;
ISBN: 3-486-22646-0,
- Java in a Nutshell (Deutsche Ausgabe)
von David Flanagan (Konstantin Agouros) im O`Reilly-Verlag;
ISBN: 3-930673-46-0,
- Java - Das Computer Taschenbuch
von Kai Baufeldt und Rolf Mäuers im Data Becker-Verlag;
ISBN: 3-8158-1533-3,
- Die Java-Fibel
von Ralf Kühnel bei Addison-Wesley;
ISBN: 3-8273-1024-5,
- Java - Die Programmiersprache (Deutsche Ausgabe)
von Ken Arnold und James Gosling bei Addison Wesley;
ISBN: 3-8273-1034-2.
Zeitschriften/WWW-Veröffentlichungen:
- Software-Entwicklung,
- PC-Professional,
- Java-Spektrum,
- SUN The Java Tutorial,
- SUN The Java Language Environment - A White Paper,
- SUN JavaBeans - V1.0 API Specification.
5.2.2 WWW-Ressourcen
Die Liste bestand aus fast 100 Links zu den Themen Java-Entwicklung, Anwendungen,
Entwicklungswerkzeuge, Java-Fehler, Intranet, Client/Server, JDBC, etc. und wurde
inzwischen komplett aus dem Seminar entfernt. Die diversen Seiten/Adressen unterliegen nach wie vor
ständigen Änderungen und ein dauerndes Updaten ist praktisch nicht mehr zumutbar ohne einen neuen
Berufszweig zu erschließen. Die Originalliste kann dennoch eingesehen werden.
5.2.3 Sonstiges
Autorenkontakt: Carsten Bank
Postfach 1203
56246 Herschbach
0271/780 386
E-Mail: bank@studm.hrz.uni-siegen.de
ICQ: 1018462