Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

Java wird 10 Jahre alt

In diesem Monat wird Java 10 Jahre alt. Java begann als Programmiersprache, mit der Entwickler animierte Bilder auf Internetseiten erstellen konnten, wuchs aber in den Jahren deutlich über diese Möglichkeiten hinaus. Inzwischen wird Java in vielen Applikationen eingesetzt, sowohl für Computer als auch für Handys. 1995 war dieser Erfolg kaum vorherzusehen, auch in den ersten Jahren waren Java-Seiten bei den Benutzern wohl schon deswegen wenig beliebt, weil es teilweise ewig dauerte, bis der Browser die Java-Erweiterung geladen hatte. Während IBM, BEA Systems und Borland Software Milliarden Dollar mit Java-Tools machten, war Sun vergleichsweise erfolglos. Momentan gibt es auf der Mac-Plattform Ärger darüber, dass die Entwicklung nicht so schnell vorankommt, wie es sich viele wünschen.

Weiterführende Links:

Kommentare

Neum
Neum05.05.05 14:56
[...] auch in den ersten Jahren waren Java-Seiten bei den Benutzern wohl schon deswegen wenig beliebt, weil es teilweise ewig dauerte, bis der Browser die Java-Erweiterung geladen hatte.

In den ersten Jahren? Das ist immernoch so... Und das Java lahm ist, merkt man nicht nur bei den Applets im Netz, sondern auch bei den Apps und ihren Startzeiten... Ich mag Java nicht und versuch immer einen Weg drum rum zu finden, aber jedem das seine... Objective-C und Cocoa finde ich ausgereifter...
0
michi_mahrer05.05.05 15:08
Wenn Java auch so schnell läuft wie auf nem PC... wäre das schon viel besser. Vorallem die Browser haben extrem lang auf nem Mac. Ist ja das Handy noch schneller.
0
teorema67
teorema6705.05.05 15:20
Ich assoziiere Java nach wie vor mit *langsam* und vermeide Java-basierte Apps, angefangen bei Neo.
Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)
0
rudynorff05.05.05 15:33
Neum, du weisst das Obj C/Cocoa und Java ein komplett verschiedener Technologie-Ansatz sind, richtig?
Die beiden Sprachen und APIs sind eigentlich nicht zu vergleichen.
Bitte verstehe mich nicht falsch, ich finde Cocoa und Obj C auch super, aber man kann ja auch einen Sportwagen nicht mit einem LKW vergleichen.
0
Neum
Neum05.05.05 16:00
rudynorff:
Ja, aber ich meine fuer den Einsatz unter Mac OS ist einfach Obj.-C viel besser geeignet und ich finde Java auf allen Systemen ein bisschen murksig, da eben nie die Verbindung zwischen OS und Programming Language da ist, weil man es ja auf allen Systemen zum Laufen bringen will/muss... Ich mag solche Kompromisse nicht, da hab ich lieber eine gut portierte App in C++ und Carbon, dauert zwar laenger, aber ich weiss dann auch das es richtig laeuft!
0
Granini05.05.05 16:00
Klar war Sun vergleichsweise erfolglos. Kein Wunder, wenn man die Software verschenkt
Wenn ich einen Autohandel aufmache und Autos verschenke, werd ich wohl auch recht wenig Geld einnehmen.
0
FrankBerger05.05.05 16:39
wer undifferenziert glaubt, das Java lahm ist sollte vielleicht mal
einen Benchmark machen, z.B. Neuronale Netze. Bis jetzt hat sich noch niemand drauf eingelassen, dass sein Code (egal welche Sprache nur kein Assembler; läuft aud mind. 2 CPU Plattformen) deutlich schneller ist als mein Java Code.

Weiterhin. Obj-C ist ein tolle Sprache, aber es Mac only.
Mit Java kann ich Cross-Platform entwickeln. Und in meinem Programm, was etwas über 100.000 Zeilen Code umfasst, sind keine 200 Zeilen betriebssystemspezifisch.

Leider ist die Java-Implementierung auf OS X allerdings nicht so Klasse. Die x86-Implementierungen von SUN sind deutlich schneller und erheblich fehlerfreier. Java 1.4 war vor Tiger z.B. kaum benutzbar.
0
Agrajag05.05.05 16:39
Wer glaubt, daß Java langsam ist, der soll sich nur mal Azureus anschauen. Was bei Java etwas langsam ist, das sind die GUI-Bibliotheken AWT/Swing. SWT ist da schon wiede schneller. Aber an langsame GUIs sollten wir OSXler uns doch wohl schon gewöht haben.

Ich jedenfalls bin froh, daß es viele Programme in Java gibt. Sonst würde es so manche Software gar nicht erst für OSX geben.
0
Neum
Neum05.05.05 16:46
FrankBerger:
Obj-C ist keines Wegs Mac only, mit dem Foundation Framework kann man seinen Code sowohl auf Win als auch auf Linux zum Laufen bringen, ueber den Sinn laesst sich bekanntermassen aber streiten... Mit einen paar kleinen Tricks und Hacks [wenn es sowas denn unter Linux gibt] bekommt man seine Obj.-C/Cocoa Apps sogar mit dem originalen Cocoa-Framework zum Laufen
0
Sven Janssen
Sven Janssen05.05.05 19:00
Obj-C Mac-Only?
A) kommt das ganze von Next, b) läuft das mit dem gcc auf allen Plattformen. Ich könnte ja auch konsolen Tools damit schrieben. Lediglich die ganzen Frameworks von Apple sind Mac Only.

Ich mache übrigens auch einen großen Bogen um Java. Sowohl in der Entwicklung als auch beim benutzen der Programme. Ich habe in meinen 13 Jahren Software Entwicklung 2x Java Tools programmiert und ich fand es einfach schrecklich.

Sven
0
jirjen05.05.05 19:14
Und bei mir funzt seit Safari 2 einiges an Java-Skripten nicht mehr, zB bei Wordpress...
0
Jan_L
Jan_L05.05.05 20:03
Happy Birthday!
Ich bin grad dabei, mir die Java-Grundlagen anzueignen.

Ich finde, die Syntay um einiges klarer und logischer als bei C/C++
Mit Objective C kenn ich mich aber überhaupt nicht aus (leider, leider)


jirjen
Java Script hat mit Java nicht viel am Hut.
0
Jan_L
Jan_L05.05.05 20:26
Noch ein Vorteil von Java:
Es ist ein ziemlicher Unterschied, ob ich ein Programm unter allen Betriebssystemen, unter denen es laufen soll, einzeln kompilieren muss, oder davon ausgehen kann, dass es auf allen Systemen mit Java-Runtime läuft.

[OT]
Mal ne Frage:
Kann man Java-CLASSES ohne dieses DevelopingKit ausführen??? Oder brauch man da jars?
[/OT]
0
cocoa moe06.05.05 08:08
Jan_L:
Ich finde, die Syntay um einiges klarer und logischer als bei C/C++

Das ist nicht überraschend. Wenige Leute haben schon mal von Programmiersprachen gehört, die eine unverständlichere Syntax haben als C/C++.

Mit Objective C kenn ich mich aber überhaupt nicht aus (leider, leider)
id *objC = [[ObjectiveC alloc] init];
[Jan_L learnLanguage: objC usingBook: [Book bookFromString:@"Learning Cocoa"]];




Kann man Java-CLASSES ohne dieses DevelopingKit ausführen??? Oder brauch man da jars?


Ausführer braucht nur das jre (Runtime Environment – Auf dem Mac automatisch vorinstalliert) nicht das jdk (Development Kit). „.jar“s sind sowas wie die „.dmg“s
0
FrankBerger06.05.05 08:50
Jan_L Im Terminal kannst du class files ausführen: java your_class

Natrürlich kann ich Obj-C mit gcc überall zum Laufen bringen, aber ich meinte natürlich Obj-C/Cocoa. Zwar gibt es auch GNUStep aber das sieht IMHO nicht so prickelnd aus.

Und abgesehen von der Startzeit (die bei nativen Programmen auch nicht sooo prickelnd ist) ist Performance keine Frage. Es ist allerdings auch eine Frage des Skills.
0
planetexpress69
planetexpress6906.05.05 13:47
Der Unterschied von Java und ObjC ist nicht so groß; letztendlich ist es dem Programmierer egal, ob er
myObj = new Obj();
myObj.doSomething(arg);

oder

Obj *myObj = [[Obj alloc] init];
[myObj doSomething:arg];

schreibt... Halt nur eine syntaktische Differenz.

ObjC ist im Gegensatz zu Java nicht getypt; es entfällt das Prüfen auf Null oder das Fangen von NullPointerExceptions. Auf der anderen Seite muß man sich um den Speicher kümmern, release/retain sind aber um Einiges einfacher zu handhaben, als das MemoryManagement von C(++).

Die oft zitierte Langsamkeit von Java ist fast immer auf das Laden der VM oder uninspirierte Programmierung zurückzuführen; selbst Swing-Anwendungen kann man durch Verwendung von Threads sehr viel responsibler machen. Java mag auf dem Desktop vielleicht nie der große Kick werden; serverseitig (Tomcat, JBoss) kann ich es nur empfehlen...
Cocoa ist ein wirklich tolles Framework und mit XCode steht eine feine IDE zur Verfügung; allerdings schreibt man damit eben nur Programme für den Mac.
0
Jan_L
Jan_L06.05.05 14:44
FrankBerger
War mir schon klar
Nur bei meinem Kumpel hat das mit wndows nicht geklappt, obwohl er die Runtime installiert hatte
0

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.