Oracle brengt Java 8 uit

Oracle heeft Java Development Kit 8 uitgebracht. Een van de belangrijkste wijzigingen is de toevoeging van lambda expressies, anonieme functies. De release had eigenlijk al een half jaar geleden moeten plaatsvinden.

JavaDe door Oracle als download vrijgegeven JDK 8 is gebaseerd op de Java Platform Standard Edition 8-specificatie. Eigenlijk had de release al in september vorig jaar moeten plaatsvinden, maar met name extra werk aan Project Lambda zorgde voor uitstel. JDK 8 ondersteunt namelijk lambda expressies waarmee ontwikkelaars functioneel kunnen programmeren. Het werken met anonieme functies zou het gebruik van de objectgeoriënteerde taal efficiënter en eenvoudiger moeten maken.

Onder andere de nieuwe Stream-api van JDK 8 maakt veelvuldig gebruik van lambda expressies voor het parallel verwerken van grote datasets. Nieuw in Java 8 is verder de snellere JavaScript-engine Nashorn, die gebaseerd is op SUN's Da Vinci Machine en die de Rhino-engine aflost, terwijl ook Java Mission Control 5.3 aanwezig is. Tenslotte is er de Date-Time-api, zijn er Compact Profiles-subsets en heeft Oracle diverse beveiligingsverbeteringen doorgevoerd. Oracle zal de vernieuwingen op 25 maart in een webcast uitgebreid uit de doeken doen.

De release valt samen met die van NetBeans 8, die verbeterde analysetools en editors voor Java SE 8, Java SE Embedded 8 en Java ME Embedded 8 bevat. De ide verbetert onder andere de ondersteuning voor Maven, Java EE met PrimeFaces, php en C/C++ en er zijn nieuwe tools voor html5.

Door Olaf van Miltenburg

Nieuwscoördinator

19-03-2014 • 10:19

102

Reacties (102)

Sorteer op:

Weergave:

Weet iemand of closures eindelijk volledig worden ondersteund in Java?
Of is het nog steeds de halfslachtige benadering waarbij alleen globale variabelen mogen worden benaderd binnen een closure?
State of the Lambda, September 2013
We relax this restriction -- for both lambda expressions and inner classes -- by also allowing the capture of effectively final local variables.
Hmm... je kunt dus geen algemene locale variabelen benaderen.
Sorry, maar dat kan ik geen closure noemen dan.
Een betere benaming is m.i. een ordinaire "functie-pointer".
De release had eigenlijk al een half jaar geleden moeten plaatsvinden.
Dat het is uitgesteld is niet echt iets bijzonders. Volgens mij is het zelfs al eerder een keer uitgesteld, en was het oorspronkelijk de bedoeling dat het een jaar geleden al uit zou komen. Ook de release van Java 7 is meerdere keren uitgesteld.

Ik vind het niet erg, ze kunnen beter bij Oracle wat meer tijd besteden om alles af en goed gedebugged te krijgen dan te haasten en een versie met fouten te releasen.
Hij is nu "uit", maar ik zou nog een paar patches afwachten voordat je het ook daadwerkelijk in productie gaat gebruiken. Historisch is de .0 versie best buggy, ik ga me niet verbazen als dat hier ook zo is. Meestal wacht ik op Java X release 5 voordat ik de overstap waag (als developer, niet als eindgebruiker).
Fijn om te zien dat er weer een grote update is voor Java, maar zelf ben ik meer geïnteresseerd in de vernieuwingen voor Netbeans. PHP 5.5, nieuwe JS engine, betere AngularJS support, betere debugging van Phonegap 3.3 via Android 4.4 debugging. Aardig wat moois voor de webontwikkelaar dus.
Ah, de officiële lancering vind plaats over 06 dagen, 5 uren en 25 minuten;
25 mrt. 2014 18:00 (Nederlandse tijd)

Ik ga em wel even kijken, denk ik :)

Ik vind het tevens bijzonder dat ze nu iets adopteren wat in JavaScript momenteel een onmisbaar element is geworden. (anonieme functies) Nu alleen nog de JRE eens op dieet zetten.

[Reactie gewijzigd door McBrown op 23 juli 2024 15:07]

Hopelijk gaan ze eindelijk over op een nieuw update systeem. Dit is namelijk het enige waar ik een hekel aan heb. Omdat de updates niet automatisch zijn en niets meer doen dan een installer downloaden en ook omdat de updates niet werken als je ook java 64bit installeert kan ik me voorstellen dat veel mensen de updates niet installeren. Juist omdat mensen de updates niet installeren blijft java een leuk platform voor hackers. Als java een nieuwe update zou bouwen of heeft gebouwd in Java 8 zouden meteen de grootste problemen met java verholpen zijn.
I spy… value-based classes?

Value classes, da’s nieuw…! Maar kan er nauwelijks informatie over vinden.

Zie ook de beschrijving van java.util.Optional:
“This is a value-based class; use of identity-sensitive operations (including reference equality (==), identity hash code, or synchronization) on instances of Optional may have unpredictable results and should be avoided.”

[Reactie gewijzigd door Grauw op 23 juli 2024 15:07]

Als je je applicatiebeheerders eens goed wil laten schrikken moet je nu even een mailtje sturen: "Java 8 is uit, we gaan vanmiddag upgraden."

Op dit item kan niet meer gereageerd worden.