Zmiany w java 9
Java 9 to główna wersja popularnego języka programowania Java, która ma przynieść wiele zmian. Obejmują one zarówno nowe funkcje, takie jak nowy system modułowy, jak i usunięcie niektórych przestarzałych interfejsów API. Nowa wersja języka z pewnością przyniesie duże zmiany w sposobie tworzenia i interakcji programistów z ich aplikacjami. Pojawiły się również nowe narzędzia, które pomogą programistom wykorzystać nowe funkcje, takie jak Java Platform Module System (JPMS) i nowy jshell REPL. Dzięki tym wszystkim zmianom, Java 9 z pewnością wywrze duży wpływ na świat programowania.
Przegląd Javy 9
Nowy JDK 9 został ogłoszony w marcu 2017 roku i będzie ogólnie dostępny we wrześniu 2017 roku. Jest to dziewiąta duża aktualizacja platformy Java. Kluczowe cechy Java 9 są następujące:
- Nowy system modułów, który rozdziela kod na pakiety.
- Nowy system runtime, który dzieli kod między architektury procesorów.
- Nowe interfejsy API poprawiające bezpieczeństwo i niezawodność aplikacji w Javie.
- Nowe narzędzia pomagające programistom wykorzystać zalety Javy 9.
- Ulepszenia wydajności w kluczowych obszarach platformy.
Cechy Javy 9
- Nowy system modułów w Javie 9
- Nowy system modułów nosi nazwę Java Platform Module System (JPMS). Pozwala on na tworzenie oddzielnych pakietów dla swojego kodu, co jest przydatne do porządkowania kodu i unikania kolizji nazewnictwa z innymi pakietami.
- Nowy system runtime w Javie 9
- Nowy system runtime współdzielony między architekturami procesorów nosi nazwę Common Virtual Machine (VM) i ułatwi programistom uruchamianie aplikacji na różnych urządzeniach.
- API poprawiające bezpieczeństwo i niezawodność aplikacji Java
- API takie jak Significant Blow (SIGB) i Security Context (SEC) zostały dodane, aby zwiększyć niezawodność aplikacji i poprawić bezpieczeństwo aplikacji Java.
- Nowe narzędzia pomagające programistom wykorzystać możliwości Javy 9
- Dodano kilka narzędzi pomagających programistom wykorzystać możliwości Javy 9, takich jak jshell REPL i flaga @jdk/java-version.
- Poprawa wydajności w kluczowych obszarach platformy
- Kompilator HotSpot został zoptymalizowany, aby działał szybciej. Wydajność JDBC również została poprawiona poprzez usunięcie nieistotnych funkcji. W Javie 9 wprowadzono również nowe lekkie obrazy.
Zmiany w ścieżce klas Java.
Ścieżka klasy to ścieżka używana przez zasób (taki jak plik jar) do znalezienia zależności. Zamiast używać ścieżki klas do znajdowania zależności, nowy system JPMS będzie używał systemu modułów do znajdowania zależności. Tak więc, nowy system modułów zastąpi stary system ścieżek klas.
Poprawki bezpieczeństwa w Javie 9
Poprawki bezpieczeństwa są ważną częścią każdego wydania Javy, ponieważ pomagają zmniejszyć ryzyko naruszenia bezpieczeństwa. Niektóre z ulepszeń bezpieczeństwa, które zostały wprowadzone w Javie 9, są następujące:
- Significant Blow (SIGB): Nowa funkcja bezpieczeństwa o nazwie SIGB pozwala na oznaczenie metody jako znaczącej. Oznacza to, że jeśli ta metoda zostanie wywołana ze źle sformułowanym wejściem, w czasie wykonywania zostanie rzucony wyjątek.
- Security Context (SEC): Kolejna nowa funkcja bezpieczeństwa nosi nazwę SEC. Pozwala ona na zdefiniowanie wywołań zwrotnych cyklu życia kontekstu bezpieczeństwa. Kiedy dostęp do zasobów jest próbowany, kontekst bezpieczeństwa zostanie wywołany, aby sprawdzić, czy dostęp jest dozwolony, czy nie.
- Nowe lekkie obrazy: Lekkie obrazy umożliwiają zmniejszenie rozmiaru obrazów w celu szybszego ładowania. Ta funkcja jest pomocna w zmniejszaniu rozmiaru obrazów, co dodatkowo poprawia wydajność aplikacji.
Poprawa wydajności w kluczowych obszarach platformy
Kompilator HotSpot został zoptymalizowany, aby działał szybciej. Wydajność JDBC również została poprawiona poprzez usunięcie nieistotnych funkcji i uczynienie sterownika JDBC nieco lżejszym. Lekkie obrazy Java 9 zostały również zoptymalizowane, aby zmniejszyć ich rozmiar.
Przestarzałe interfejsy API w Javie 9
Nowe funkcje Java 9 są świetne, ale co jeśli używasz starszego API? Miejmy nadzieję, że zostało ono zdeprecjonowane w Javie 9, dzięki czemu można je usunąć. Następujące interfejsy API zostały zdeprecjonowane w Javie 9 i powinny zostać zastąpione przez nowe interfejsy API.
- Binary Regular Expressions (BRE): BRE służy do wyszukiwania sekwencji danych binarnych. Nowe API nosi nazwę Pattern.
- ImageDecoder
- Nowe API jest dostępne w bibliotece standardowej, co ułatwia korzystanie z niego.
- IO-Interactive
- Nowe API jest dostępne w bibliotece standardowej, co ułatwia korzystanie z niego.
- Random
- Nowe API jest dostępne w bibliotece standardowej, co ułatwia korzystanie z niego.
Nowe narzędzia pomagające programistom wykorzystać możliwości Javy 9
Dodano kilka narzędzi, aby pomóc programistom wykorzystać możliwości Javy 9, takie jak jshell REPL i flaga @jdk/java-version.