# Was haltet ihr von Java 1.6



## david (27. Feb 2006)

Hi,
mich würde mal eure meinung zu Java 1.6 Beta interessieren. Ich habe die beta einmal getestet und finde einige der neuen Klassen sehr praktisch. Es macht das Programmieren einfacher.

Mfg david


----------



## Thammi (27. Feb 2006)

Ich persönlich benutze bisher nur die Tray-Icons, aber die finde ich einfach nur genial. Was die Dinger alles können hätte ich nie zu träuen gewagt ;-). Auch wenn derzeit noch kleinere Probleme bestehen (z.B. reagiert das PopUp-Menü der Tray-Icons in meinem Gnome nicht) find ich J2SE 1.6 (oder heisst's 6?) ziemlich gelungen.


----------



## MPW (27. Feb 2006)

Joa vorallem finde ich die Performance toll, ein von mir geproggtes Spiel laeuft glatt mit der halben Prozessorauslastung(natuerlich nur, wenn man es auch 1.6 kompiliert...). Auch die StartUp Zeit und der Speicherverbrauch sind deutlich runter gegangen.

Zweiter Punkt ist, dass man die Programme von nativen jetzt nicht mehr unterscheiden kann, da die WindowsAPI zum anzeigen genutzt wird.

Die Trays hab ich zwar noch nicht genutzt, aber die find ich auch klasse.

Auch haben die Leutchen von Sun es ja endlich mal geschafft, eine Klasse Console einzufuehren, mit der man die Console steuern kann, leider ist sie etwas mager ausgefallen, die einzige neue Funktion ist einlesen von Passwoertern.

Die neuen XML-Klassen werde ich persoenlich nicht nutzen, da ich keine Ahnung von XML hab;-)

Ein Manko fuer mich ist, dass leider immer noch keine durchsichtigen Frames unterstuetzt werden, das aergert mich echt, denn das ich nach wie vor ein groesses Problem. Genauso gibt es immer noch keine globalen Hotkeys....an den "groesseren" Nachteilen von Java, die man nicht mal so eben beheben kann, ist eigentlich nichts gemacht worden.

Was mich stoert sind die teilweise an etwas merkwuerdigen Stellen auftretenden Bugs, zum Beispiel wird eine JTextArea in einer JScrollPane wird bei mir nie richtig dargestellt. Das sind die Gruende, warum ich es noch nicht nutze, bzw. wieder geloescht hab.

Desweiteren ist glaube ich Java3D nicht fest integriert worden, obwohl ja mal die Rede davon war?

Aber insgesammt natuerlich das non plus ultra, alleine die Performance.

Was ist eigentlich sonst noch an neuen Klassen dazugekommen, wie viele neue Klassen gibt es?


----------



## thomas.g (27. Feb 2006)

Dazugekommen ist unter anderem noch die Klasse "SplashScreen". Damit soll es möglich sein einen Startbildschirm schon vor dem eigentlichen Start der JVM zu haben was natürlich für den User gut ist, da er sehen kann was das Programm beim starten gerade macht.

Die Performance von Java 6.0 ist ein Hit vorallem weil die nun eine OpenGL Pipeline in Mustang integriert haben und das ist auch einer der Gründe warum das neue Java so schnell ist. Hier der Benchmark:
http://weblogs.java.net/blog/campbell/archive/2005/07/strcrazier_perf.html

Derzeit gibt es noch ziemliche Probleme mit der Darstellung vom Swing Komponenten und dem TrayIcon.
Das ist auch der Grund warum ich die Beta noch keinem Empfehle.

mfg, thomas


----------



## stev.glasow (27. Feb 2006)

Ihr GUI-Blender :bae: "Nur" weil Java2D jetzt evtl. mit Opengl zeichnet (meine Grafikkarte kann das z.B. gar nicht; und die ich im Büro hatte auch nicht)  ist die Performance von Java gleich der 'Hit'. Finde das auch gut, aber das beste dran ist dass Java dadurch wohl endlich seinen Ruf als lahmes Etwa verlieren wird. :roll: 
Im übrigen finde ich im Vergleich zu dem was bei Java 5 alles dazu kam gibt es eigentlich nicht besonders viele neue Sachen. "Damals" war ich irgendwie juckieger  

Und was ich nicht verstehe, warum nicht alles von JDIC übernommen wurde .?


----------



## AlArenal (27. Feb 2006)

Die hier und da geäußerte Kritik kommt etwas spät. Ihr hättet euch schon vor Urzeiten am Community Process beteiligen und konstruktiv einwirken und mitarbeiten gekonnt.

Was die Bugs angeht ist das okay. Ne Beta ist dazu da solche Bugs zu finden. Auch finale Versionen sind mitunter mit Vorsicht zu genießen. Bei SAP beispielweise setzen viele Firmen auf "autkeulle Versionsnummer minus eins"...


----------



## Bleiglanz (27. Feb 2006)

Ich habs noch nicht getestet, bin aber von den neuen XML Sachen recht angetan

ist immer praktisch, wenn die Sachen schon im JDK sind und man mit weniger .jars herumjonglieren muss


----------



## meez (27. Feb 2006)

Als Programmierer muss ich sagen, sieht vielversprechend aus...
Aus einer betrieblichen Sicht muss ich sagen, dass es noch mindestens ein paar Jahre brauchen wird bis es benutzt werden kann (Dasselbe gilt auch für 1.5) ...


----------



## stev.glasow (27. Feb 2006)

> Dasselbe gilt auch für 1.5


Wie meinst? Dann sind ja 1.5 und 1.6 zur selben Zeit so weit.


----------



## RicoSoft (27. Feb 2006)

das entspricht auch der realität. bis wir hier 1.5 einführen werden, wird noch viel zeit vergehen. der code, den wir hier geschrieben haben, läuft problemlos auf 1.4 aber eine portierung auf 1.5 würde uns alleine einfach 1/2 jahr beschäftigen und dieses 1/2 jahr haben wir nicht. wir versuchen zwar, neue module auf 1.5 zu entwickeln, aber auch das ist nicht immer möglich (kunden haben immer noch sehr selten 1.5 im einsatz)


----------



## stev.glasow (27. Feb 2006)

Was müsst ihr denn da groß portieren? Der 1.4er läuft doch auch mit 1.5. !?


----------



## SebiB90 (27. Feb 2006)

wo gibt es eine liste mit den wichtigsten neuen funktionen? möglichst in deutsch wenns geht.


----------



## Beni (27. Feb 2006)

Hier gibts eine deutsche Liste.


----------



## Bleiglanz (27. Feb 2006)

Sehr schön

Endlich ham sie das alte SwingWorker Beispiel aus dem Tutorial ins JDK aufgenommen...

```
public abstract class SwingWorker<T,V> extends Object
implements RunnableFuture<T>
```


----------



## Bleiglanz (27. Feb 2006)

Nochwas gefunden das uns hier im Forum das Leben leichter machen wird

```
$ java -cp 'ordner/*' StartKlasse
```
es gibt endlich einen Wildcard für Classpath!


----------



## Ontos (27. Feb 2006)

Moin Moin



			
				RicoSoft hat gesagt.:
			
		

> das entspricht auch der realität. bis wir hier 1.5 einführen werden, wird noch viel zeit vergehen. der code, den wir hier geschrieben haben, läuft problemlos auf 1.4 aber eine portierung auf 1.5 würde uns alleine einfach 1/2 jahr beschäftigen und dieses 1/2 jahr haben wir nicht. wir versuchen zwar, neue module auf 1.5 zu entwickeln, aber auch das ist nicht immer möglich (kunden haben immer noch sehr selten 1.5 im einsatz)



Also bei uns wird Java 6 (oder wie immer Sun diese Version benennt)  ab dem Release Day aktiv laufen! Wir haben allerdings auch den Vorteil das unsere Kunden Supportverträge haben und eine enge Kundenbindung besteht so das Versionen ausgetauscht werden können. Sun hat ja mit der 5. Version einiges an der Installation und dem Download Center getan so das das Update relativ einfach auch für nicht super Admins zu schaffen ist.

Ich hoffe auf der Performanbce Verbesserungen und das jetzt endlich jeder klein Editor einen riiiiiesigen Splash Screen haben kann. 
Hat Sun bei Windows  wieder was an den Standard Verzeichnissen für die Installation geändert oder immer noch c:/Programme/Java/.. ?
Außerdem freue ich mich sehr auf die TableRowSorter Klasse!


cu Jens


----------



## karahead (27. Feb 2006)

Also ich kann Java 6 kaum noch erwarten 
Kennt jemand vielleicht ein release Datum für Mustang? Hab irgendwie nix dazu gefunden.


----------



## norman (27. Feb 2006)

http://java.sun.com/javase/6/ hat gesagt.:
			
		

> Java SE 6 ("Mustang") Beta offers the first 'feature complete' version of Sun's next major release of the Java SE platform. Sun has endeavored to foster the highest level of transparency and collaboration on the platform with the Java community through the Mustang Project, and expects to ship the final release of Java SE 6 the fall of 2006.


----------



## karahead (27. Feb 2006)

cool, danke


----------



## Illuvatar (27. Feb 2006)

Bleiglanz hat gesagt.:
			
		

> Sehr schön
> 
> Endlich ham sie das alte SwingWorker Beispiel aus dem Tutorial ins JDK aufgenommen...
> 
> ...



Und ich dazu gleich mal was in die FAQ 
http://www.java-forum.org/de/viewtopic.php?p=170808#170808


----------



## lin (27. Feb 2006)

> expects to ship the final release of Java SE 6 the fall of 2006.


schon? ist ja cool *freu*..


----------



## karahead (27. Feb 2006)

Ich hoffe, dass eclipse bis dahin auch schon bereit ist


----------



## AlArenal (27. Feb 2006)

karahead hat gesagt.:
			
		

> Ich hoffe, dass eclipse bis dahin auch schon bereit ist



Wozu? Neue Sprachfeatures im Verlgeich zu Java 5 gibts nicht...


----------



## karahead (27. Feb 2006)

Hmmm und wie stell ich dann bei Eclipse auf Mustang um?
Projects->Properties->Java Compiler geht nur bis 1.5

Oder hab ich was verpasst??


----------



## byte (27. Feb 2006)

Mein Plattenspieler spielt keine CDs, was kann ich tun? 

Es gibt wohl ne Eclipse Build, die Mustang kann, aber die normale Release Version kanns nicht. Per Hand die JRE wechseln müsste aber gehn.


----------



## AlArenal (27. Feb 2006)

byto hat gesagt.:
			
		

> Es gibt wohl ne Eclipse Build, die Mustang kann, aber die normale Release Version kanns nicht. Per Hand die JRE wechseln müsste aber gehn.



Wie, "kann"?? Was soll Eclipse da können? Wo issn das Problem? Zu verwöhnt vom Mausschubsen, dass ihr nichtmal mehr in der Lage seid in Eclipse ein zusätzliches JRE in die Liste aufzunehmen? 

P.S.:
Ich habe hier ein ganz schnöseliges Eclipse 3.1.0 UND sehrwohl das Pferdchen an Bord...


----------



## Roar (27. Feb 2006)

MPW hat gesagt.:
			
		

> Zweiter Punkt ist, dass man die Programme von nativen jetzt nicht mehr unterscheiden kann, da die WindowsAPI zum anzeigen genutzt wird.


geil...    :roll:


----------



## meez (27. Feb 2006)

stevg hat gesagt.:
			
		

> Wie meinst? Dann sind ja 1.5 und 1.6 zur selben Zeit so weit.



Naja..solche Releases sind immer erst etwa 1 bis 2 Jahre nach dem Release brauchbar (Stabilität, Bugs)...
Zudem müssen auch mal die ganze J2EE Software(n) auf 1.5/6 umgeschrieben/zertifiziert werden ...


----------



## lin (27. Feb 2006)

> Ich habe hier ein ganz schnöseliges Eclipse 3.1.0 UND sehrwohl das Pferdchen an Bord...


pah, 3.1.2 ist der standard :bae:


----------



## MPW (27. Feb 2006)

Roar hat gesagt.:
			
		

> MPW hat gesagt.:
> 
> 
> 
> ...



Joa aber die Funktionen werden dadurch nicht erweitert, und es sind wohl noch ein paar bugs drin beim Anzeigen der Komponenten...


----------



## Roar (27. Feb 2006)

MPW hat gesagt.:
			
		

> Roar hat gesagt.:
> 
> 
> 
> ...


das war ironisch gemeint du horst... swing wird noch imemr von java gezeichnet. unter windows wird natürlich nativ auf windows zurückgegriffen, aber das ist nix neues.
und awt auch nicht.
wie kommst du auf sowas? :?


----------



## MPW (28. Feb 2006)

hm, ich kann lesen;-)



			
				http://www.heise.de/newsticker/meldung/69662 hat gesagt.:
			
		

> In Java 6 geschriebene Desktop-Anwendungen sollen nicht mehr typisch nach Java aussehen, sondern wie direkt für das Betriebssystem geschriebene.



Das Windows selber auch dutztende verschiedene Layouts hat, ist die einzige logische Konsequenz, dass die Fenster direkt von der WindowsAPI erzeugt werden(hab dsa meine ich auch irgendwo gelesen, find es nur gerade nicht mehr).


----------



## Roar (28. Feb 2006)

MPW hat gesagt.:
			
		

> http://www.heise.de/newsticker/meldung/69662 hat gesagt.:
> 
> 
> 
> > In Java 6 geschriebene Desktop-Anwendungen sollen nicht mehr typisch nach Java aussehen, sondern wie direkt für das Betriebssystem geschriebene.


ui, ein heise text 
auch in java 5 geschriebene desktop-anwendungen sollten nicht mehr "typisch" nach java aussehen...



> Das Windows selber auch dutztende verschiedene Layouts hat


meinst du damit die windows themes? jo wahrscheinlich


> ist die einzige logische Konsequenz, dass die Fenster direkt von der WindowsAPI erzeugt werden(hab dsa meine ich auch irgendwo gelesen, find es nur gerade nicht mehr).


nee, es wird noch genauso gepainted wie auch in java 5  auch in java 5 werden verschiedene windows themes korrekt in java applikationen angezeigt. verbesserungen am lookandfeel gab es natürlich, wie immer, aber deine idee ist absurd


----------



## Guest (28. Feb 2006)

Da bin ich mal gespannt, wie es weiter mit SWT und vor allem RCP geht. 
Das sieht nämlich nicht nach Java aus und ist einfach nur genial gelöst.

Die XML-Sachen in 1.6 finde ich aber klasse.


----------



## lin (28. Feb 2006)

hmm... also ich find schon das Aussehen der 1.5 er Applikationen gut..
also für mich könnte Sun sich den Aufwand sparen, den windows look zu entwickeln...


----------



## Guest (28. Feb 2006)

@lin
Es hat aber immer so einen unprofessionellen Touch, ähnlich wie GTK. Es ist inzwischen 
schon etwas besser geworden, aber am meisten wurde bei Swing immer bemängelt, dass 
die damit gemachten Programme anderes Verhalten haben, als native Anwendungen. 
Man muss stellenweise viel Aufwand treiben, um es den Anwendern schmackhaft zu machen.


----------



## MPW (28. Feb 2006)

Anonymous hat gesagt.:
			
		

> @lin
> Es hat aber immer so einen unprofessionellen Touch, ähnlich wie GTK. Es ist inzwischen
> schon etwas besser geworden, aber am meisten wurde bei Swing immer bemängelt, dass
> die damit gemachten Programme anderes Verhalten haben, als native Anwendungen.
> Man muss stellenweise viel Aufwand treiben, um es den Anwendern schmackhaft zu machen.



Gib mal ein Beispiel.


----------



## AlArenal (28. Feb 2006)

Anonymous hat gesagt.:
			
		

> @lin
> Es hat aber immer so einen unprofessionellen Touch, ähnlich wie GTK. Es ist inzwischen
> schon etwas besser geworden, aber am meisten wurde bei Swing immer bemängelt, dass
> die damit gemachten Programme anderes Verhalten haben, als native Anwendungen.
> Man muss stellenweise viel Aufwand treiben, um es den Anwendern schmackhaft zu machen.



Man muss auch fairerweise erwähnen, dass es auch andere Standpunkte mit guten Argumenten gibt. Nicht jede Anwendung sieht aus wie MS Office. Die verschiedenen MS Office Versionen sehen nichtmal gleich aus. Schaue ich mir Software von Adobe oder Macromedia oder sonstwem an - im Grunde haben alle ihren spezifischen Look, abseits der "MS Norm". Es ist ein Irrglaube, dass der User zu dämlich ist ein programm zu bedienen, sobald es mal etwas anders aussieht. Das ist ne Diskussion, die gibt es auch zwischen verschiedenen Plattformen und gerade unter Linux & Co. sieht alles anders aus. Der eine benutzt QT, der andere GTK, der nächste wieder etwas anderes und jeder nimmt nen anderen Window-manager mit nem anderen Theme, anderen Farben, .... dennoch kann man alle bedienen, auch als Durchschnittsuser. Schaut man sich auch branchenspezifische Software an, an kommt die oft spröde daher und dennoch kommen alle damit klar, die es müssen. Mache ich im WISO Sparbuc meine Steuererklärung, ist das UI auch was völlig eigenstädniges und dennoch kommt jeder damit klar (ist ja ein Programm, dass sich an jeden Erwachsenen richtet)...

Der Aufwand, den viele treiben, damit ihre Anwendungen sich so wenig wie möglich vom gewohnten abheben (völlig ignorierend, dass die User bereits an Unterschiede gewöhnt sind), ist in der Regel überzogen und rechtfertigt in der Regel nicht den gewünschten Effekt. Das ist meist Gleichmacherei, wo keine nötig wäre. 
Und überhaupt findet man die schönsten Wiesen meist abseits der abgewetzten Trampelpfade. Sich abzuheben ist auch ein Alleinstellungs- und Widererkennungsmerkmal und macht mitunter ein Produkt/eine Marke aus.

Ich kann auch was anderes als VW Golf 4 mit Klima und manueller 5-Gang-Schaltung fahren, obwohl ich nur auf dem meinen Führerschein gemacht habe. In der Tat bin ich froh, dass ich nie mehr VW Golf gefahren bin seither.


----------



## MPW (28. Feb 2006)

Okay damit hast du vllt recht, aber du musst schon zugeben, dass das StandardLookAndFeel ein bisschen kindisch aussieht, oder?


----------



## Illuvatar (28. Feb 2006)

Ja, ich muss sagen, das Metal-LaF find ich auch nicht so toll, und v.a. ins Windows echt nicht reinpassend. Aber wenn man das LaF auf das System-LaF setzt, is das eigentlich gut. Wobei ich hier kein Luna oder Bluna oder wie das heißt-Theme verwende, sondern "old-style", wo ein paar graue Buttons reichen, um sich gut einzufügen


----------



## MPW (28. Feb 2006)

was ist den das System-LaF?


----------



## meez (28. Feb 2006)

Ich persönlich finde, dass verschiedene LnF's (oder auch native Anbindungen) nichts in einem JRE verloren haben...
Das bläht das JRE nur unnötig auf...
Ein Standard LnF ist genug...sollte jemand ein anderes wünschen, soll er es in seiner App. mitbundeln...


----------



## AlArenal (28. Feb 2006)

@meez:
Du tust gerade so, als seien 147 L&Fs á 10 MB im JRE... 
DAS ist nun wirklich kein sinniges Argument.


----------



## Guest (1. Mrz 2006)

@AlArenal
Klar hast Du Recht mit dem Einwand, dass nicht alles gleich aussehen muss. 
Oracle, SAP und auch zahlreiche andere Unternehmen haben ihr eigenes L&F,
was der Wiedererkennungswert erhöht (Stichwort: Corporate Identity).
Es gibt aber einige Gemeinsamkeiten, die z.B. bei allen Windows Anwendungen
gleich sind, die Spielregeln für Tastenkürzel, Komponentenverhalten etc.
Ein Beispiel, Tabellen in Swing und die Tab-Taste. Man erwartet, dass die nächste
Komponente in der Focus-Reihenfolge fokussiert wird, was "per default" nicht
der Fall ist (stattdessen Ctrl-Tab). Manche Container wie SplitPane oder auch 
ScrollPane können unter gewissen Umständen auf einmal fokussierbar sein etc.
Dann noch das Overkill mit den Focus traversal policies. Es stimmt vorne und
hinten nicht. Anderes Beispiel, Dialogfenster und Default-Button, der gleich den 
Focus an sich reisst. Inline-Editor einer Tabelle, der nach Tabulator nicht zur
nächsten Spalte springt, sondern aus dem Editiermodus heraus. ComboBox,
deren Popup nicht automatisch an die Breite der Inhalte angepasst wird,
JSpiltPane reagiert erst dann auf Positionsänderungen, wenn es sichtbar ist, usw.
Ich könnte die Liste so weiter fortführen. Wenn man es lange genug kennt, kann 
man es zwar mit paar Zeilen Code wieder zurecht biegen, dennoch nerven gerade 
diese Kleinigkeiten ungemein. 
Nicht umsonst entstehen Frameworks wie das bei JGoodies u.ä. oder man schreibt 
selbst welche (zumindest paar Templates für typische Klimmzüge in Swing).
Ich sehe es meist eher pragmatischer, kann mit den Unterschieden leben, leider
entwickelt man nicht für sich selbst. Gespräche über das "Warum" fange ich bei
einem Kunden nicht mal an, sondern mache es gleich so, wie er es von anderen
Anwendungen gewohnt ist.


----------



## L-ectron-X (1. Mrz 2006)

MPW hat gesagt.:
			
		

> was ist den das System-LaF?


Jetzt bin ich platt. :shock:  Das System-LAF ist das look and feel des Systems, auf dem deine Anwendung läuft.
Schreib mal folgendes als erstes in die main()-Methode deiner GUI-Anwendung:

```
try {
   UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e) {}
```


----------



## meez (1. Mrz 2006)

AlArenal hat gesagt.:
			
		

> Du tust gerade so, als seien 147 L&Fs á 10 MB im JRE...
> DAS ist nun wirklich kein sinniges Argument.



pfff...die sind riesig... :wink:


----------



## MPW (1. Mrz 2006)

L-ectron-X hat gesagt.:
			
		

> MPW hat gesagt.:
> 
> 
> 
> ...



Aso, joa das, hab das nur gerade nicht gecheckt;-) Ich nenne das immer natives LAF


----------

