Jáva

Java 11 Nové funkce

Java 11 Nové funkce
Společnost Oracle nedávno vydala sadu Java Development Kit 10 (JDK 10), což znamená, že JDK 11 není daleko, v souladu s novým šestiměsíčním cyklem vydání Oracle. Podívejme se, na jaké nové funkce se již můžete těšit v JDK 11.

Sběratel odpadu Epsilon

Podle JDK Enhancement Proposal (or JEP) 318, Epsilon is a low-overhead garbage collector (GC), jehož účelem je zpracovávat alokaci paměti bez implementace jakéhokoli skutečného mechanismu rekultivace paměti.

Cílem je „poskytnout zcela pasivní implementaci GC s omezeným limitem alokace a nejnižší možnou latencí, na úkor stopy paměti a propustnosti paměti,“ uvádějí v návrhu vývojáři jádra Java. „Úspěšná implementace je izolovaná změna kódu, nedotýká se ostatních GC a ve zbytku JVM provádí minimální změny.“

I když Java již nabízí široký výběr vysoce konfigurovatelných implementací GC, vývojáři věří, že je snazší udržovat samostatnou implementaci GC pro řešení konkrétních případů použití, jako je testování výkonu, testování tlaku v paměti, testování rozhraní VM, extrémně krátkodobé úlohy , vylepšení latence poslední kapky nebo vylepšení propustnosti poslední kapky, než hromadění jiné možnosti konfigurace ve stávající implementaci GC.

Syntaxe lokálních proměnných pro parametry lambda

Java 10 představila odvození lokální proměnné typu, aby se snížila výřečnost spojená s psaním kódu Java, a Java 11 ji rozšiřuje tak, aby umožňovala var použít při deklaraci formálních parametrů implicitně zadaných výrazů lambda, jak je uvedeno v JEP 323 s názvem Syntaxe lokální proměnné pro parametry Lambda.

Místo toho tedy místo psaní:

(var x, var y) -> x.proces (y)

Bude možné jednoduše napsat:

(x, y) -> x.proces (y)

Samotná uniformita není jedinou výhodou syntaxe lokálních proměnných pro parametry lambda. Další výhodou je, že bude možné aplikovat modifikátory na lokální proměnné a formáty lambda bez ztráty stručnosti.

Dynamické konstanty třídních souborů

JEP 309 rozšiřuje formát souborů třídy Java o novou formu konstantního fondu, CONSTANT_Dynamic, za účelem snížení nákladů a narušení vytváření nových forem materializovatelných konstant třídních souborů. Stejně jako propojení invokedynamic zavolat delegáty stránky propojení s metodou bootstrap, tak bude načítání a CONSTANT_Dynamic vytvoření delegáta metodou bootstrap.

Podle vývojářů jádra Java nabídne nová forma konstantního fondu návrhářům jazyků a implementátorům překladačů širší možnosti pro expresivitu a výkon. „Bohatší, flexibilnější a typičtější konstanty odstraňují tření z vývoje invokedynamických protokolů, což zase usnadňuje přesun složité logiky z doby běhu do doby propojení, zlepšuje výkon programu a zjednodušuje logiku kompilátoru.“

Co se nedostane do Javy 11

Navzdory výše popsaným funkcím bude Java 11 ve skutečnosti štíhlejší než Java 10, protože je nastavena tak, aby ztratila CORBA (Common Object Request Broker Architecture), moduly Java EE a JavaFX, sadu grafických a mediálních balíčků, které vývojářům umožňují navrhovat, vytvářet, testovat, ladit a nasazovat bohaté klientské aplikace.

CORBA je otevřený standard pro heterogenní práci na počítači a v prostředí Java SE 9 byl spolu s moduly Java EE zastaralý. Samostatné verze modulů Java EE budou stále k dispozici na webech třetích stran, ale Oracle již nebude muset udržovat dvě samostatné implementace: jednu v prostředí Java SE a druhou v prostředí Java EE.

Jak změnit levé a pravé tlačítko myši na počítači se systémem Windows 10
Je úplnou normou, že všechna zařízení počítačových myší jsou ergonomicky navržena pro praváky. K dispozici jsou však myší zařízení, která jsou speciál...
Emulace kliknutí myší vznášením pomocí myši Clickless Mouse ve Windows 10
Používání myši nebo klávesnice ve špatném držení těla nadměrného používání může mít za následek mnoho zdravotních problémů, včetně napětí, syndromu ka...
Přidejte gesta myši do Windows 10 pomocí těchto bezplatných nástrojů
V posledních letech se počítače a operační systémy značně vyvinuly. Bývaly doby, kdy uživatelé museli procházet správci souborů pomocí příkazů. Stejně...