ಜಾವಾ SE 19 ಬಿಡುಗಡೆ

ಆರು ತಿಂಗಳ ಅಭಿವೃದ್ಧಿಯ ನಂತರ, Oracle ಜಾವಾ SE 19 (ಜಾವಾ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್, ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಆವೃತ್ತಿ 19) ಅನ್ನು ಬಿಡುಗಡೆ ಮಾಡಿತು, ಇದು ಓಪನ್ ಸೋರ್ಸ್ OpenJDK ಯೋಜನೆಯನ್ನು ಉಲ್ಲೇಖದ ಅನುಷ್ಠಾನವಾಗಿ ಬಳಸುತ್ತದೆ. ಕೆಲವು ಬಳಕೆಯಲ್ಲಿಲ್ಲದ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ತೆಗೆದುಹಾಕುವುದನ್ನು ಹೊರತುಪಡಿಸಿ, Java SE 19 ಜಾವಾ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ನ ಹಿಂದಿನ ಬಿಡುಗಡೆಗಳೊಂದಿಗೆ ಹಿಂದುಳಿದ ಹೊಂದಾಣಿಕೆಯನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ - ಹೊಸ ಆವೃತ್ತಿಯ ಅಡಿಯಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವಾಗ ಹೆಚ್ಚಿನ ಹಿಂದೆ ಬರೆದ ಜಾವಾ ಯೋಜನೆಗಳು ಬದಲಾವಣೆಗಳಿಲ್ಲದೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ. ಲಿನಕ್ಸ್ (x19_86, AArch64), Windows (x64_86) ಮತ್ತು macOS (x64_86, AArch64) ಗಾಗಿ Java SE 64 (JDK, JRE ಮತ್ತು ಸರ್ವರ್ JRE) ನ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲು ಸಿದ್ಧವಾಗಿದೆ. OpenJDK ಯೋಜನೆಯಿಂದ ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ, ಜಾವಾ 19 ಉಲ್ಲೇಖದ ಅನುಷ್ಠಾನವು GPLv2 ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ಸಂಪೂರ್ಣವಾಗಿ ಮುಕ್ತ ಮೂಲವಾಗಿದೆ, GNU ClassPath ವಿನಾಯಿತಿಗಳೊಂದಿಗೆ ವಾಣಿಜ್ಯ ಉತ್ಪನ್ನಗಳೊಂದಿಗೆ ಡೈನಾಮಿಕ್ ಲಿಂಕ್ ಅನ್ನು ಅನುಮತಿಸುತ್ತದೆ.

Java SE 19 ಅನ್ನು ಸಾಮಾನ್ಯ ಬೆಂಬಲ ಬಿಡುಗಡೆ ಎಂದು ವರ್ಗೀಕರಿಸಲಾಗಿದೆ ಮತ್ತು ಮುಂದಿನ ಬಿಡುಗಡೆಯವರೆಗೂ ನವೀಕರಣಗಳನ್ನು ಸ್ವೀಕರಿಸುವುದನ್ನು ಮುಂದುವರಿಸುತ್ತದೆ. ದೀರ್ಘಾವಧಿಯ ಬೆಂಬಲ (LTS) ಶಾಖೆಯು Java SE 17 ಆಗಿರಬೇಕು, ಇದು 2029 ರವರೆಗೆ ನವೀಕರಣಗಳನ್ನು ಸ್ವೀಕರಿಸುವುದನ್ನು ಮುಂದುವರಿಸುತ್ತದೆ. ಜಾವಾ 10 ರ ಬಿಡುಗಡೆಯಿಂದ ಪ್ರಾರಂಭಿಸಿ, ಯೋಜನೆಯು ಹೊಸ ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಗೆ ಬದಲಾಯಿತು, ಹೊಸ ಬಿಡುಗಡೆಗಳ ರಚನೆಗೆ ಕಡಿಮೆ ಚಕ್ರವನ್ನು ಸೂಚಿಸುತ್ತದೆ ಎಂದು ನಾವು ನಿಮಗೆ ನೆನಪಿಸೋಣ. ಹೊಸ ಕಾರ್ಯವನ್ನು ಈಗ ನಿರಂತರವಾಗಿ ನವೀಕರಿಸಿದ ಮಾಸ್ಟರ್ ಶಾಖೆಯಲ್ಲಿ ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ, ಇದು ಸಿದ್ಧ ಬದಲಾವಣೆಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ ಮತ್ತು ಹೊಸ ಬಿಡುಗಡೆಗಳನ್ನು ಸ್ಥಿರಗೊಳಿಸಲು ಪ್ರತಿ ಆರು ತಿಂಗಳಿಗೊಮ್ಮೆ ಶಾಖೆಗಳನ್ನು ಶಾಖೆ ಮಾಡಲಾಗುತ್ತದೆ.

Java 19 ನಲ್ಲಿನ ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳು ಸೇರಿವೆ:

  • ರೆಕಾರ್ಡ್ ಪ್ಯಾಟರ್ನ್‌ಗಳಿಗೆ ಪ್ರಾಥಮಿಕ ಬೆಂಬಲವನ್ನು ಪ್ರಸ್ತಾಪಿಸಲಾಗಿದೆ, ರೆಕಾರ್ಡ್ ತರಗತಿಗಳ ಮೌಲ್ಯಗಳನ್ನು ಪಾರ್ಸಿಂಗ್ ಮಾಡುವ ಸಾಧನಗಳೊಂದಿಗೆ ಜಾವಾ 16 ನಲ್ಲಿ ಪರಿಚಯಿಸಲಾದ ಪ್ಯಾಟರ್ನ್ ಮ್ಯಾಚಿಂಗ್ ವೈಶಿಷ್ಟ್ಯವನ್ನು ವಿಸ್ತರಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ: ರೆಕಾರ್ಡ್ ಪಾಯಿಂಟ್ (int x, int y) {} ಅನೂರ್ಜಿತ ಪ್ರಿಂಟ್‌ಸಮ್ (ಆಬ್ಜೆಕ್ಟ್ o) { if (o instance of Point(int x, int y)) { System.out.println(x+y); } }
  • Linux ಬಿಲ್ಡ್‌ಗಳು RISC-V ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗೆ ಬೆಂಬಲವನ್ನು ನೀಡುತ್ತವೆ.
  • FFM (ವಿದೇಶಿ ಕಾರ್ಯ ಮತ್ತು ಮೆಮೊರಿ) API ಗಾಗಿ ಪ್ರಾಥಮಿಕ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಇದು ಬಾಹ್ಯ ಲೈಬ್ರರಿಗಳಿಂದ ಕಾರ್ಯಗಳನ್ನು ಕರೆ ಮಾಡುವ ಮೂಲಕ ಮತ್ತು JVM ಹೊರಗೆ ಮೆಮೊರಿಯನ್ನು ಪ್ರವೇಶಿಸುವ ಮೂಲಕ ಬಾಹ್ಯ ಕೋಡ್ ಮತ್ತು ಡೇಟಾದೊಂದಿಗೆ ಜಾವಾ ಕಾರ್ಯಕ್ರಮಗಳ ಪರಸ್ಪರ ಕ್ರಿಯೆಯನ್ನು ಸಂಘಟಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.
  • ವರ್ಚುವಲ್ ಥ್ರೆಡ್‌ಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಅವುಗಳು ಹಗುರವಾದ ಥ್ರೆಡ್‌ಗಳಾಗಿವೆ, ಇದು ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯ ಬಹು-ಥ್ರೆಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಬರವಣಿಗೆ ಮತ್ತು ನಿರ್ವಹಣೆಯನ್ನು ಹೆಚ್ಚು ಸರಳಗೊಳಿಸುತ್ತದೆ.
  • x86_64 ಮತ್ತು AArch64 ಪ್ರೊಸೆಸರ್‌ಗಳಲ್ಲಿ ವೆಕ್ಟರ್ ಸೂಚನೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಕಾರ್ಯಗತಗೊಳಿಸಲಾದ ವೆಕ್ಟರ್ ಲೆಕ್ಕಾಚಾರಗಳಿಗೆ ಕಾರ್ಯಗಳನ್ನು ಒದಗಿಸುವ ವೆಕ್ಟರ್ API ಯ ನಾಲ್ಕನೇ ಪೂರ್ವವೀಕ್ಷಣೆಯನ್ನು ಪ್ರಸ್ತಾಪಿಸಲಾಗಿದೆ ಮತ್ತು ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಏಕಕಾಲದಲ್ಲಿ ಬಹು ಮೌಲ್ಯಗಳಿಗೆ (SIMD) ಅನ್ವಯಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಸ್ಕೇಲಾರ್ ಕಾರ್ಯಾಚರಣೆಗಳ ಸ್ವಯಂ-ವೆಕ್ಟರೈಸೇಶನ್‌ಗಾಗಿ ಹಾಟ್‌ಸ್ಪಾಟ್ ಜೆಐಟಿ ಕಂಪೈಲರ್‌ನಲ್ಲಿ ಒದಗಿಸಲಾದ ಸಾಮರ್ಥ್ಯಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿ, ಹೊಸ API ಸಮಾನಾಂತರ ಡೇಟಾ ಪ್ರಕ್ರಿಯೆಗಾಗಿ ವೆಕ್ಟರೈಸೇಶನ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ನಿಯಂತ್ರಿಸಲು ಸಾಧ್ಯವಾಗಿಸುತ್ತದೆ.
  • "ಸ್ವಿಚ್" ಅಭಿವ್ಯಕ್ತಿಗಳಲ್ಲಿ ಮಾದರಿ ಹೊಂದಾಣಿಕೆಯ ಮೂರನೇ ಪ್ರಾಯೋಗಿಕ ಅನುಷ್ಠಾನವನ್ನು ಸೇರಿಸಲಾಗಿದೆ, "ಕೇಸ್" ಲೇಬಲ್‌ಗಳಲ್ಲಿ ನಿಖರವಾದ ಮೌಲ್ಯಗಳಲ್ಲ, ಆದರೆ ಒಂದೇ ಬಾರಿಗೆ ಮೌಲ್ಯಗಳ ಸರಣಿಯನ್ನು ಒಳಗೊಂಡ ಹೊಂದಿಕೊಳ್ಳುವ ಮಾದರಿಗಳ ಬಳಕೆಯನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಇದಕ್ಕಾಗಿ ಹಿಂದೆ ಅಗತ್ಯವಾಗಿತ್ತು "if...else" ಅಭಿವ್ಯಕ್ತಿಗಳ ತೊಡಕಿನ ಸರಪಳಿಗಳನ್ನು ಬಳಸಿ. ವಸ್ತು o = 123L; ಸ್ಟ್ರಿಂಗ್ ಫಾರ್ಮ್ಯಾಟ್ ಮಾಡಲಾಗಿದೆ = ಸ್ವಿಚ್ (ಒ) {ಕೇಸ್ ಪೂರ್ಣಾಂಕ i -> String.format("int %d", i); ಸಂದರ್ಭದಲ್ಲಿ Long l -> String.format("ಉದ್ದ %d", l); ಕೇಸ್ ಡಬಲ್ d -> String.format("ಡಬಲ್ %f", d); ಕೇಸ್ ಸ್ಟ್ರಿಂಗ್ s -> String.format("ಸ್ಟ್ರಿಂಗ್ %s", s); ಡೀಫಾಲ್ಟ್ -> o.toString(); };
  • ರಚನಾತ್ಮಕ ಸಮಾನಾಂತರತೆಗಾಗಿ ಪ್ರಾಯೋಗಿಕ API ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಇದು ವಿವಿಧ ಥ್ರೆಡ್‌ಗಳಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಬಹು ಕಾರ್ಯಗಳನ್ನು ಒಂದೇ ಬ್ಲಾಕ್‌ನಂತೆ ಪರಿಗಣಿಸುವ ಮೂಲಕ ಬಹು-ಥ್ರೆಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಅಭಿವೃದ್ಧಿಯನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ