เปิดตัวภาษาการเขียนโปรแกรม Dart 2.8

ไปยังสถานที่ การเปิดตัวภาษาโปรแกรม โผ 2.8ซึ่งยังคงพัฒนาสาขา Dart 2 ที่ได้รับการออกแบบใหม่อย่างรุนแรง โดยมุ่งเน้นไปที่การพัฒนาสำหรับระบบเว็บและอุปกรณ์เคลื่อนที่ และได้รับการปรับให้เหมาะสมสำหรับการสร้างส่วนประกอบฝั่งไคลเอ็นต์

Dart 2 แตกต่างจากภาษา Dart ดั้งเดิมในเรื่องการใช้การพิมพ์คงที่ขั้นสูง (ประเภทสามารถอนุมานได้โดยอัตโนมัติ ดังนั้นข้อกำหนดประเภทจึงเป็นทางเลือก แต่การพิมพ์แบบไดนามิกจะไม่ใช้อีกต่อไป และประเภทที่คำนวณเริ่มแรกถูกกำหนดให้กับตัวแปรและการตรวจสอบประเภทที่เข้มงวดคือ มาใช้ในภายหลัง) สำหรับการพัฒนาเว็บแอพพลิเคชั่น ที่นำเสนอ ชุดของไลบรารีเฉพาะ เช่น dart:html รวมถึงเฟรมเวิร์กเว็บเชิงมุม กำลังได้รับการส่งเสริมกรอบงานสำหรับการสร้างแอปพลิเคชันมือถือ กระพือบนพื้นฐานของสิ่งอื่นใด เชลล์ผู้ใช้ของระบบปฏิบัติการไมโครเคอร์เนลใหม่ที่ได้รับการพัฒนาที่ Google ถูกสร้างขึ้น สีแดงม่วง.

ในรุ่นใหม่:

  • เพิ่มวิธีการใช้ค่า Null อย่างปลอดภัย ทำลายความเข้ากันได้แบบย้อนหลัง ตัวอย่างเช่น ข้อผิดพลาดเวลาคอมไพล์จะปรากฏขึ้นหากมีการพยายามกำหนดค่า "Null" ให้กับตัวแปรประเภทที่ไม่ได้กำหนด เช่น "int" มีการจำกัดความเข้ากันได้ของตัวแปรที่มีประเภท Nullable และ Non-Nullable เช่น “int?” และ "int" (ตัวแปรประเภท "int" สามารถกำหนดตัวแปรประเภท "int" ได้ แต่ไม่ใช่ในทางกลับกัน) เช่นเดียวกับตัวแปรที่ส่งคืนในคำสั่ง "return" - หากในเนื้อหาของฟังก์ชันไม่ได้กำหนดค่าตัวแปรที่มีประเภทที่ไม่อนุญาตให้มีสถานะ "Null" คอมไพเลอร์จะแสดงข้อผิดพลาด การเปลี่ยนแปลงเหล่านี้จะช่วยให้คุณสามารถหลีกเลี่ยงข้อขัดข้องที่เกิดจากความพยายามใช้ตัวแปรที่ไม่มีการกำหนดค่าและตั้งค่าเป็น "Null"
  • ที่เก็บ pub.dev ผ่านเครื่องหมาย 10 แพ็คเกจ ในฐานะที่เป็นส่วนหนึ่งของวงจรการเตรียมใช้งาน Dart 2.8 ประสิทธิภาพในการดึงแพ็คเกจจาก pub.dev ได้รับการปรับปรุงอย่างมีนัยสำคัญโดยรองรับการดึงแพ็คเกจเป็นเธรดคู่ขนานหลายเธรดเมื่อดำเนินการคำสั่ง "pub get" รวมถึงการคอมไพล์ล่วงหน้าแบบขี้เกียจเมื่อดำเนินการ " คำสั่ง pub run" การทดสอบคำสั่ง “pub get” สำหรับโปรเจ็กต์ที่ใช้ Flutter ใหม่ พบว่าเวลาดำเนินการลดลงจาก 6.5 เป็น 2.5 วินาที และสำหรับแอปพลิเคชันขนาดใหญ่ เช่น Flutter gallery จาก 15 เป็น 3 วินาที
  • เพิ่มคำสั่ง "pub outdated" ใหม่เพื่อให้การขึ้นต่อกันทั้งหมดในแพ็คเกจที่ติดตั้งเป็นปัจจุบัน การใช้คำสั่ง "pub outdated" คุณสามารถประเมินได้โดยไม่ต้องทำการเปลี่ยนแปลงไฟล์ pubspec ไม่ว่าจะมีเวอร์ชันหลักที่ใหม่กว่าของการขึ้นต่อกันทั้งหมดที่เกี่ยวข้องกับแพ็คเกจที่ระบุหรือไม่ ไม่เหมือนกับ "pub upgrade" คำสั่งใหม่ไม่เพียงตรวจสอบเวอร์ชันที่สอดคล้องกับ pubspec เท่านั้น แต่ยังตรวจสอบสาขาที่ใหม่กว่าด้วย ตัวอย่างเช่น สำหรับแพ็คเกจที่มีการขึ้นต่อกันที่ปักหมุดไว้ "foo: ^1.3.0" และ "bar: ^2.0.0" การรัน "pub outdated" จะแสดงการมีอยู่ของทั้งสาขาที่มีอยู่และสาขาที่ใหม่กว่า:

    การพึ่งพาปัจจุบัน อัปเกรดได้ แก้ไขได้ ล่าสุด
    ฟู 1.3.0 1.3.1 1.3.1 1.3.1
    บาร์ 2.0.1 2.1.0 3.0.3 3.0.3

คุณสมบัติของภาษา Dart:

  • ไวยากรณ์ที่คุ้นเคยและเรียนรู้ได้ง่าย เป็นธรรมชาติสำหรับโปรแกรมเมอร์ JavaScript, C และ Java
  • รับประกันการเปิดตัวที่รวดเร็วและประสิทธิภาพสูงสำหรับเว็บเบราว์เซอร์สมัยใหม่และสภาพแวดล้อมประเภทต่างๆ ตั้งแต่อุปกรณ์พกพาไปจนถึงเซิร์ฟเวอร์ที่ทรงพลัง
  • ความสามารถในการกำหนดคลาสและอินเทอร์เฟซที่อนุญาตให้มีการห่อหุ้มและนำวิธีการและข้อมูลที่มีอยู่กลับมาใช้ใหม่
  • การระบุประเภทช่วยให้แก้ไขจุดบกพร่องและระบุข้อผิดพลาดได้ง่ายขึ้น ทำให้โค้ดชัดเจนขึ้นและอ่านง่ายขึ้น และทำให้การแก้ไขและการวิเคราะห์ง่ายขึ้นโดยนักพัฒนาบุคคลที่สาม
  • ประเภทที่รองรับ ได้แก่ แฮชประเภทต่างๆ อาร์เรย์และรายการ คิว ประเภทตัวเลขและสตริง ประเภทสำหรับกำหนดวันที่และเวลา นิพจน์ทั่วไป (RegExp) อาจจะ สร้างของคุณเอง ประเภท;
  • ในการจัดระเบียบการดำเนินการแบบขนาน ขอเสนอให้ใช้คลาสที่มีแอตทริบิวต์ isolate ซึ่งโค้ดถูกดำเนินการทั้งหมดในพื้นที่แยกในพื้นที่หน่วยความจำแยกต่างหาก โต้ตอบกับกระบวนการหลักโดยการส่งข้อความ
  • รองรับการใช้ไลบรารีที่ทำให้การสนับสนุนและการดีบักโครงการเว็บขนาดใหญ่ง่ายขึ้น การใช้งานฟังก์ชันของบุคคลที่สามสามารถรวมไว้ในรูปแบบของไลบรารีที่ใช้ร่วมกันได้ แอปพลิเคชันสามารถแบ่งออกเป็นส่วน ๆ และมอบหมายการพัฒนาแต่ละส่วนให้กับทีมโปรแกรมเมอร์ที่แยกจากกัน
  • ชุดเครื่องมือสำเร็จรูปเพื่อรองรับการพัฒนาในภาษา Dart รวมถึงการใช้เครื่องมือการพัฒนาแบบไดนามิกและการดีบักพร้อมการแก้ไขโค้ดแบบทันที (“แก้ไขและดำเนินการต่อ”);
  • เพื่อให้การพัฒนาในภาษา Dart ง่ายขึ้นก็มาพร้อมกับ SDK, ผู้จัดการแพ็คเกจ ผับ, เครื่องวิเคราะห์โค้ดแบบคงที่ dart_analyzer, ชุดห้องสมุด, สภาพแวดล้อมการพัฒนาแบบบูรณาการ โผแพด และปลั๊กอินที่เปิดใช้งาน Dart สำหรับ IntelliJ IDEA, เว็บสตอร์ม, Emacs, ข้อความสุดยอด 2 и เป็นกลุ่ม;
  • แพ็คเกจเพิ่มเติมพร้อมไลบรารีและยูทิลิตี้จะถูกแจกจ่ายผ่านพื้นที่เก็บข้อมูล ผับซึ่งมีมากกว่า 10 แพ็คเกจ

ที่มา: opennet.ru

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