Nyheter i Java 10 och vad är framtidsplanerna?
Nyligen har Java ändrat tempot på utgåvorna. Tidigare skulle det ta år att komma med en ny Java-version. Men Java 10 släpptes till världen bara sex månader efter Java 9. Det verkar som om Oracle kommer att försöka få nya Java-versioner till utvecklare så snart som möjligt. Snabbare lansering av Java-versioner innebär att utvecklare kommer att få tillgång till nya funktioner tidigare. Å andra sidan kommer snabb utveckling av utvecklare att leda till mer Java-popularitet. Så det är en vinn-vinn för båda parter.
Vad är nytt?
Här är några av de viktiga Java 10-funktionerna:
Lokal variabel typslutning: Java kräver uttryckligen skrivna variabler för att säkerställa "typsäkerhet". Det används som en designprincip för att minimera runtime-fel. Att skriva variabler uttryckligen för loop-iteratorer och mellanliggande värden gör dock Java-programmering tidskrävande och felbenägen. Med lokal inferens av variabel typ kommer Java-kompilatorn att kunna härleda typen av en variabel från kontext. Det borde påskynda programmeringen i Java.
Parallell full GC för G1-sopuppsamlare: Ibland får skräpsamling prioritet framför program som körs och programkörningen är frusen för att ge skräpsamling exklusiv tillgång till JVM. Detta är känt som "Full Garbage Collection". I Java 10 har denna process optimerats för att köra parallella trådar på flera processorer. Det gör processen mer effektiv.
Datadelning av applikationsklass: Det optimerar starttid och fotavtryck. Om en burk inte ändras ändras inte heller klassdata. När klassdata har skapats kan den läggas i ett arkiv och återanvändas över flera JVM: er.
Experimentell JIT-kompilator: Just-in-time (JIT) kompilatorer hjälper utvecklare att skriva effektiva applikationer. Men Javas JIT-kompilator skrevs i C++. Den nya JIT är Java-baserad. Det kommer att göra det lättare för utvecklare att underhålla koden.
Docker Awareness: Java 10 JVM vet om den körs i en Docker-behållare. Istället för att prata direkt med operativsystemet får JVM informationen från Docker-behållaren.
Konsolidera JDK Forest till ett enda arkiv: Olika JDK-skogar kombineras i ett enda förvar. Det förbättrar städningen och effektiviserar utvecklingen.
Heapallokering på alternativa minnesenheter: HotSpot VM kommer att kunna allokera Java-objektheap på en alternativ användardefinierad minnesenhet.
Rotcertifikat: JDK 10 har utvecklats i samarbete med OpenJDK. Det ger en standarduppsättning av rotcertifieringsmyndigheter.
Framtidsplaner
Här är några framtida överväganden för Java:
- Amber-projektet hjälper till att skapa produktivitetsorienterade funktioner som lokal inferens av variabel typ, förbättrade enums och lambda-rester.
- Project Panama arbetar med att sammankoppla JVM och inbyggd kod.
- Project Valhalla försöker utveckla viktiga språkfunktioner för Java 10.
- Project Loom fokuserar på att förenkla utvecklingen av samtidiga applikationer. Det kommer att bevara de allmänna Java-trådarna samtidigt som prestandan förbättras och fotavtrycket minskas.
Slutsats
De nya snabba släppcyklerna innebär att funktioner kan pressas till nästa release oftare än tidigare. Men totalt sett bör JDK 10-funktioner vara bra för alla.
Referenser:
- https: // www.infoworld.com / artikel / 3230507 / java / java-jdk-10-vad-nya-funktioner-att-förvänta-i-nästa-java.html
- https: // www.forbes.com / sites / oracle / 2018/03/20 / what-java-10-and-javas-new-6-month-release-cadence-mean-for-developers / # 1c8b7e29271a
- https: // blogg.codefx.org / java / application-class-data-sharing /
- https: // jaxenter.com / better-containerized-jvms-jdk-10-140593.html
- https: // dzone.com / artiklar / java-10-släppt-10-nya-funktioner-devs-borde-veta