JavaRush /Blog Java /Random-PL /Java 13: co nas czeka w najbliższej przyszłości?

Java 13: co nas czeka w najbliższej przyszłości?

Opublikowano w grupie Random-PL
Choć do premiery Java 13 pozostały jeszcze całe trzy miesiące, na stronie OpenJDK cały czas pojawiają się szczegóły dotyczące innowacji w nadchodzącej wersji naszego ulubionego języka . Pamiętajmy, że zmian w Javie dokonuje się za pomocą propozycji ulepszeń JDK – JEP (JDK Enhancement Proposals), które później integruje się z nowymi wersjami (no cóż, albo nie integruje, jeśli nie zostaną uznane za wystarczająco przydatne i odpowiednie). Poniżej znajdują się niektóre funkcje zaproponowane dla nowej wersji Java: Bloki tekstowe. Według JEP-355 bloki tekstu powinny pojawić się w JDK 13 (na poziomie podglądu). Bloki tekstowe to wieloczęściowe literały łańcuchowe, które eliminują potrzebę stosowania większości sekwencji ucieczki. Teraz nie będziesz musiał uciekać od większości znaków specjalnych i pojawią się automatyczne podziały linii. Blok tekstowy automatycznie formatuje linię i daje programistom kontrolę nad formatem. Ten JEP został stworzony przede wszystkim w celu uproszczenia procesów pisania i czytania kodu, ponieważ w Javie osadzanie obiektów innych niż Java (na przykład XML lub JSON) zwykle wymaga „tańczenia z tamburynem” - specyficznej edycji linii, więc takie osadzanie jest zwykle trudne do tworzenia, wspierania i czytania. Aktualizacja API gniazd. Nowa Java najprawdopodobniej przepisze dotychczasowe API gniazd. Teoretycznie zaktualizowana implementacja stanie się nowocześniejsza oraz łatwiejsza w utrzymaniu i debugowaniu. Ma zastąpić podstawową implementację używaną przez interfejsy API net.Socket i java.net.ServerSocket. Nowa wersja została zaprojektowana tak, aby łatwo dostosować się do pracy z wątkami trybu użytkownika (włóknami lub włóknami), które są eksplorowane w Loom , projekcie stworzonym w celu ułatwienia pisania, debugowania, profilowania i obsługi aplikacji równoległych. Korzenie wyżej wymienionych starszych interfejsów API sięgają JDK 1.0 i zawierają mieszankę starszego kodu C i Java, który jest trudny do debugowania i konserwacji. Poprzednia implementacja ma również inne problemy: własną strukturę danych obsługującą asynchroniczne zamykanie, co powoduje problemy z niezawodnością i przenośnością, oraz problemy ze współbieżnością wymagające rewizji. Ulepszenie ZGC (Z Garbage Collector). W nowej wersji chcą wymusić na śmieciarce ZGC zwrócenie systemowi operacyjnemu nieużywanej pamięci. ZGC jest sprzedawany jako skalowalny moduł zbierający elementy bezużyteczne o niskim opóźnieniu, ale jak dotąd nadal nie zwraca nieużywanej pamięci z powrotem do systemu operacyjnego, nawet jeśli pamięć ta nie była używana przez długi czas. Jest to oczywiście irracjonalne, a w przypadku niektórych aplikacji i środowisk, które nie mogą pozostawać bezczynne przez długi czas, takie podejście jest całkowicie krytyczne. Ulepszanie funkcjonalności aplikacji Class-Data Sharing AppCDSaby zapewnić dynamiczną archiwizację zajęć po zakończeniu wykonywania aplikacji. Udostępnianie danych klas lub udostępnianie danych klas zostało po raz pierwszy wprowadzone w JDK 5. Ta funkcjonalność umożliwia wstępne przetworzenie zestawu klas we wspólnym pliku archiwum, który można następnie zamapować w pamięci w czasie wykonywania, aby skrócić czas uruchamiania. Klasy archiwalne będą teraz zawierać wszystkie załadowane klasy aplikacji i bibliotek, które nie są zawarte w standardowym archiwum CDS na poziomie podstawowym. Ta propozycja ma na celu poprawę użyteczności AppCDS i wyeliminowanie konieczności wykonywania przez użytkowników próbnych uruchomień w celu utworzenia listy klas dla każdej aplikacji. Wersja produktowa nowej formy wyrażeń z operatorem Switch - Switch Expressions . W wersji Java 12 w fazie podglądu pojawiło się uproszczenie kodu instrukcji switch. Można go używać w staromodny sposób lub jako wyrażenie. Teraz pozostaje tylko czekać na 17 września, czyli datę premiery Java 13. Cóż, jeśli nie możesz się doczekać, aby zapoznać się z innowacjami już teraz, możesz pobrać wersje beta z oficjalnej strony.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION