การเปิดตัว Java SE 13

หลังจากหกเดือนของการพัฒนา Oracle ปล่อยออกมา พลาทโฟรมุส JavaSE 13 (แพลตฟอร์ม Java, Standard Edition 13) โครงการโอเพ่นซอร์ส OpenJDK ถูกใช้เป็นการดำเนินการอ้างอิง Java SE 13 รักษาความเข้ากันได้แบบย้อนหลังกับแพลตฟอร์ม Java รุ่นก่อนหน้า โครงการ Java ที่เขียนไว้ก่อนหน้านี้ทั้งหมดจะทำงานโดยไม่มีการเปลี่ยนแปลงเมื่อเปิดตัวภายใต้เวอร์ชันใหม่ พร้อมติดตั้ง Java SE 13 builds (JDK, JRE และ Server JRE) เตรียมไว้ สำหรับ Linux (x86_64), Solaris, Windows และ macOS การใช้งานอ้างอิงที่พัฒนาโดยโครงการ OpenJDK 13 Java เป็นโอเพ่นซอร์สโดยสมบูรณ์ภายใต้ใบอนุญาต GPLv2 โดยมีข้อยกเว้น GNU ClassPath ช่วยให้สามารถเชื่อมโยงแบบไดนามิกกับผลิตภัณฑ์เชิงพาณิชย์ได้

Java SE 13 จัดเป็นรุ่นสนับสนุนทั่วไป และจะยังคงรับการอัปเดตต่อไปจนกว่าจะมีรุ่นถัดไป สาขาการสนับสนุนระยะยาว (LTS) ควรเป็น Java SE 11 ซึ่งจะได้รับการอัปเดตต่อไปจนถึงปี 2026 Java 8 สาขา LTS ก่อนหน้าจะได้รับการสนับสนุนจนถึงเดือนธันวาคม 2020 LTS รุ่นถัดไปมีกำหนดในเดือนกันยายน 2021 เราขอเตือนคุณว่าตั้งแต่การเปิดตัว Java 10 เป็นต้นไป โปรเจ็กต์ได้เปลี่ยนไปใช้กระบวนการพัฒนาใหม่ ซึ่งหมายถึงวงจรที่สั้นลงสำหรับการก่อตัวของรีลีสใหม่ ขณะนี้ฟังก์ชันการทำงานใหม่ได้รับการพัฒนาในสาขาหลักที่ได้รับการอัปเดตอย่างต่อเนื่อง ซึ่งรวมถึงการเปลี่ยนแปลงที่พร้อมใช้งานและสาขาที่จะแตกแขนงทุก ๆ หกเดือนเพื่อรักษาเสถียรภาพของการออกใหม่ Java 14 มีกำหนดเปิดตัวในเดือนมีนาคมปีหน้า โดยมีรุ่นตัวอย่างอยู่แล้ว ใช้ได้ สำหรับการทดสอบ

ของ นวัตกรรม 13 Java หนึ่งสามารถ เครื่องหมาย:

  • เพิ่ม รองรับการเพิ่มไฟล์เก็บถาวร CDS (Class-Data Sharing) แบบไดนามิก ทำให้แอปพลิเคชันที่ใช้ร่วมกันเข้าถึงคลาสทั่วไปได้ ด้วย CDS คลาสทั่วไปสามารถจัดเก็บไว้ในไฟล์เก็บถาวรที่ใช้ร่วมกันแยกต่างหาก ช่วยให้แอปพลิเคชันเปิดเร็วขึ้นและลดค่าใช้จ่าย เวอร์ชันใหม่เพิ่มเครื่องมือสำหรับการเก็บถาวรคลาสแบบไดนามิกหลังจากสิ้นสุดการทำงานของแอปพลิเคชัน คลาสที่เก็บถาวรประกอบด้วยคลาสทั้งหมดและไลบรารีประกอบที่โหลดระหว่างการทำงานของโปรแกรมที่ไม่ได้อยู่ในไฟล์เก็บถาวร CDS ฐานที่จัดเตรียมไว้ในตอนแรก
  • ถึง ZGC (Z Garbage Collector) เพิ่ม รองรับการคืนหน่วยความจำที่ไม่ได้ใช้ไปยังระบบปฏิบัติการ
  • ที่เกี่ยวข้อง การใช้งานที่ออกแบบใหม่ของ Legacy Socket API (java.net.Socket และ java.net.ServerSocket) ซึ่งง่ายต่อการบำรุงรักษาและแก้ไขจุดบกพร่อง นอกจากนี้ การดำเนินการที่นำเสนอจะง่ายต่อการปรับให้เข้ากับระบบใหม่ของเธรดในพื้นที่ผู้ใช้ (ไฟเบอร์) ซึ่งพัฒนาขึ้นโดยเป็นส่วนหนึ่งของโครงการ Loom
  • ต่อ การพัฒนาสำนวนรูปแบบใหม่ "สวิตช์" เพิ่มความสามารถในการทดลอง (ดูตัวอย่าง) เพื่อใช้ "สวิตช์" ในรูปแบบที่ไม่เพียงแต่ในตัวดำเนินการเท่านั้น แต่ยังเป็นนิพจน์ด้วย ตัวอย่างเช่น ตอนนี้คุณสามารถใช้โครงสร้างเช่น:

    int numLetters = สวิตช์ (วัน) {
    กรณี วันจันทร์ วันศุกร์ วันอาทิตย์ -> 6;
    กรณีวันอังคาร -> 7;
    กรณี วันพฤหัสบดี วันเสาร์ -> 8;
    กรณีวันพุธ -> 9;
    };

    หรือ

    System.out.println(
    สวิตช์ (k) {
    กรณีที่ 1 -> "หนึ่ง"
    กรณีที่ 2 -> "สอง"
    ค่าเริ่มต้น -> "หลาย"
    }
    );

    ในอนาคตตามคุณสมบัตินี้ มีการวางแผน ใช้การสนับสนุนการจับคู่รูปแบบ

  • เพิ่ม การสนับสนุนการทดลองสำหรับบล็อกข้อความ - รูปแบบใหม่ของตัวอักษรสตริงที่ช่วยให้คุณสามารถรวมข้อมูลข้อความหลายบรรทัดในซอร์สโค้ดของคุณโดยไม่ต้องใช้อักขระหลีกและรักษาการจัดรูปแบบดั้งเดิมของข้อความในบล็อก บล็อกนี้ล้อมรอบด้วยเครื่องหมายคำพูดคู่สามอัน ตัวอย่างเช่น แทนที่จะเป็นนิพจน์

    ข้อความค้นหา = "SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n" +
    "ที่ไหน `เมือง` = 'อินเดียนาโพลิส'\n"
    "เรียงลำดับตาม `EMP_ID`, `LAST_NAME`;\n";

    ตอนนี้คุณสามารถใช้การก่อสร้าง:

    แบบสอบถามสตริง = """
    เลือก `EMP_ID`, `LAST_NAME` จาก `EMPLOYEE_TB`
    โดยที่ 'เมือง' = 'อินเดียนาโพลิส'
    เรียงลำดับตาม `EMP_ID`, `LAST_NAME`;
    """;

  • รายงานข้อผิดพลาด 2126 รายการได้ถูกปิดแล้ว โดยในจำนวนนี้ 1454 รายการได้รับการแก้ไขโดยพนักงานของ Oracle และ 671 รายการได้รับการแก้ไขโดยบุคคลที่สาม โดยหนึ่งในหกของการเปลี่ยนแปลงดังกล่าวเกิดขึ้นโดยนักพัฒนาอิสระ และส่วนที่เหลือโดยตัวแทนของบริษัทต่างๆ เช่น IBM, Red Hat, Google , Loongson, Huawei, ARM และ SAP

การเปิดตัว Java SE 13

ที่มา: opennet.ru

เพิ่มความคิดเห็น