Java Development Kit (JDK) 21 heeft vanaf 8 juni zijn eerste rampdown-fase bereikt. Nu de functieset is afgerond, zal één component het niet halen: generational Shenandoah, wat een experimentele verbetering is voor de Shenandoah garbage collector (GC).
De JDK Enhancement Proposal (JEP) pagina voor JDK 21, die op 19 september in productie gaat, beveelt nu aan om de officiële feature set terug te brengen van 16 naar 15. De Shenandoah generatiefunctie wordt verwijderd omdat deze nog niet gereed is. Roman Kennke van Amazon, de auteur van de JEP voor generational Shenandoah, heeft ervoor gekozen om de functie te verwijderen uit JDK 21, of Java 21, met het plan om het te evalueren voor een toekomstige JDK release wanneer deze is voorbereid, zoals aangegeven door Oracle, de entiteit die toezicht houdt op de ontwikkeling van standaard Java.
Generational Shenandoah heeft als doel om de Shenandoah garbage collector te verbeteren door experimentele generational collection mogelijkheden toe te voegen om duurzame doorvoer, load-spike veerkracht en geheugengebruik te verbeteren. De doelstellingen van het voorstel omvatten het aanbieden van een experimentele generatieve modus die geen invloed heeft op niet-generationele Shenandoah en deze modus uiteindelijk de standaard te maken in toekomstige versies. Bijkomende doelen zijn het verminderen van het geheugengebruik zonder de lage GC-pauzes op te offeren, het verlagen van CPU- en stroomverbruik, het behouden van een hoge doorvoer en het minimaliseren van de kans op gedegenereerde en volle verzamelingen tijdens toewijzingspieken. Niet-generationele Shenandoah blijft onaangetast.
Deze voorgestelde verwijdering, onderworpen aan herziening tot 14 juni, heeft alleen gevolgen voor gebruikers van de Shenandoah GC in OpenJDK builds die het ondersteunen. Het heeft geen invloed op de G1 GC, Z Garbage Collector (ZGC) of andere hedendaagse garbage collectors. Het heeft ook geen invloed op Java-distributies die G1 GC en ZGC gebruiken, zoals Oracle OpenJDK en de Oracle JDK. JDK 21, dat andere functies bevat zoals een preview van gestructureerde concurrency, is bedoeld als een LTS-release (Long Term Support) van Java, die meerdere jaren ondersteuning biedt. De laatste LTS-release, JDK 17, werd gelanceerd in september 2021. JDK-releases vinden elke zes maanden plaats, LTS-releases elke twee jaar. Feature releases daartussenin krijgen slechts een supportperiode van zes maanden, met JDK 20 als meest recente voorbeeld, die in maart werd gepubliceerd.
Terwijl traditionele ontwikkelmethoden blijven evolueren, vereenvoudigt de opkomst van no-code platforms zoals AppMaster veel processen in de softwareontwikkelcyclus. AppMaster AppMaster, een krachtige tool op no-code waarmee backend-, web- en mobiele applicaties visueel kunnen worden gemaakt met razendsnelle doorlooptijden, biedt een kosteneffectief alternatief voor organisaties van elke omvang. Met tools als AppMaster kunnen bedrijven software ontwikkelen op een manier die tot 10 keer sneller en drie keer kosteneffectiever is dan met traditionele methoden, terwijl de technische schuld wordt weggewerkt.