A Sun tervei szerint a stabil Java 7 (más néven OpenJDK 7) jövő tavasszal kerül ki, így kezdik komolyan venni a határidőket. Ennek egyik jele, hogy a Swing Application Framework (SAF) kidobásra került: nem lesz része a hetes Java verziónak - nem sikerült megállapodni lényeges részekben, így a határidőt veszélyeztetné ez a modul.
Szomorkodnunk azért nem kell, mivel a SAF már most is elérhető, és most sem része a Java által tartalmazott keretrendszereknek. Azon se kell szomorkodnunk, hogy kevés dolgot fog tartalmazni az új verzió, ezért nézzünk bele, mint találunk majd a hetes Java verzióban.
A virtuális gépet tekintve az egyik nagy újítás a tömörített 64 bites mutatók bevezetése, amely azt jelenti, hogy a VM igyekszik 64 bites mutatók helyett 32 bitest használni, ezzel sok hely megspórolható, nagyobb mérető
heap esetén pedig továbbra is használhatók a nagyobb mutatók.
Nem mondható újdonságnak a G1 GC, amelyet már megtapasztalhatunk a Java 6u14 óta, ám a Java 7 lesz az a VM, ahol stabil és biztosan jól működő GC algoritmusként tudunk rá támaszkodni. Reménykedjünk benne, hogy az első bevezetése körüli elszólást nem fogja bevezetni az Oracle, vagyis nem sorolja a
"csak pénzért" kategóriába ezt a GC opciót.
A
JSR-292 néven emlegetett InvokeDynamic is szerves része lesz a VM utasításkészletének, ezzel a nem Java nyelvek JVM-ben való futtatása gyorsabb, fordítása egyszerűbb lesz. A nyelvi elemeket tekintve fontos újítás lesz a típusokon lévő annotációk lehetősége (
JSR-308), illetve a
Project Coin néven illetett halmaz, amely apró nyelvi újításokat tartalmaz. Nyelvi újításnak számít a modularitás támogatása (
JSR-294), amely lehetővé teszi, hogy akár futásidőben váltsunk függőségeket.
Módosítások történnek a ClassLoader API metódusaiban, illetve implementációjában, ezzel csökkenthető a deadlock lehetősége, ha nem használjuk ki a fába szervezett ClassLoader hierarchia előnyeit. Az URLClassLoader - megelőzendő a ClassLoader leak jelenségét - kapott egy
close metódust, amely felszabadítja az URLClassLoader által tartott erőforrásokat.
A
JSR-203 kódnevű NIO.2 része lesz a Java magnak, így erre a lehetőségre bármikor építhetünk programjaink fejlesztése során. Unicode 5.1 támogatás váltja fel az jelenlegi Java verziókban lévő Unicode alrendszert. Támogatást kapott a SCTP (Stream Control Transmission Protocol), az SDP (Sockets Direct Protocol), illetve az ECC (Elliptic-curve cryptography). Nagy viták után a hetes verzió tartalmazni fogja a többszálú végrehajtás programozását segítő API implementációját (
JSR-166y) is.
A kliens oldalon futó Java programok is kaptak újításokat. Ilyen például a UNIX rendszerekben az XRender által megtámogatott Java 2D alrendszer. A Java 6u10 telepítéssel és grafikai teljesítménnyel kapcsolatos újításai is szerves részei lettek az új Java verziónak (új Java plugin, Java Kernel, Quickstarter, stb). A Swing kapott egy új ruhát, amely a Nimbus nevet kapta; reméljük, ez szélesebb réteg fogja szeretni, mint a régi kinézetet.
Fél szemmel érdemes figyelni a projekt alakulását, talán ez már a végleges lista, és nem kerül ki újabb-és-újabb modul a tervezett javítások közül:
http://openjdk.java.net/projects/jdk7/features/
Comments
- Author: YourSoft —
- 2010. March 3. 12:41 —
-
You need permission to comment
Na, ez megint csúszik. Az új határidő 2010 szeptember.