มีอะไรใหม่ในภาษา Swift 5 ของ Apple

Apple ได้เปิดตัวภาษาการเขียนโปรแกรม Swift 5 พร้อมด้วยแอปพลิเคชั่นไบนารีอินเทอร์เฟซ (ABI) ที่เสถียรและความเข้ากันได้แบบไบนารีซึ่ง Apple กล่าวว่าจะส่งผลให้เกิดการพัฒนาแอปพลิเคชันขนาดเล็ก ความสามารถในการทำงานร่วมกับภาษาอื่นได้รับการปรับปรุงเช่นกัน

ด้วยการอัปเกรดนี้ ABI จึงมีความเสถียรบนแพลตฟอร์มของ Apple ดังนั้นตอนนี้ไลบรารี Swift จึงรวมอยู่ใน MacOS, iOS, WatchOS และ TVOS ทุกรุ่นในอนาคต เนื่องจากนักพัฒนาไม่จำเป็นต้องรวมไลบรารีเหล่านี้อีกต่อไปแอปพลิเคชันจึงมีขนาดเล็กลงและสร้างได้ง่ายขึ้น

คุณสมบัติใหม่อื่น ๆ ใน Swift 5 ได้แก่ :

  • ประเภทที่เรียกได้แบบไดนามิกได้รับการสนับสนุนเพื่อปรับปรุงความสามารถในการทำงานร่วมกันกับภาษาเช่น JavaScript, Python และ Ruby
  • Swift 5 ใช้ค่าเริ่มต้นในการบังคับใช้การเข้าถึงหน่วยความจำแบบเอกสิทธิ์เฉพาะบุคคลสำหรับรุ่นและการแก้ไขข้อบกพร่อง สิ่งนี้มีไว้เพื่อเพิ่มความปลอดภัยให้กับ Swift
  • Swift 5 มีการนำ String มาใช้ใหม่ชนิดข้อมูลใหม่และการบังคับใช้การเข้าถึงหน่วยความจำแบบเอกสิทธิ์เฉพาะบุคคลระหว่างรันไทม์
  • ในไลบรารีมาตรฐาน String ได้ถูกนำมาใช้ใหม่ด้วยการเข้ารหัส UTF-8 แทน UTF-16 ซึ่งจะส่งผลให้โค้ดเร็วขึ้น การทำงานร่วมกันของ Objective-C จะถูกเก็บรักษาไว้
  • Swift 5 ปรับปรุงตัวคั่นตัวอักษรสตริงเพื่อรองรับข้อความดิบ เปิดใช้งานตัวอักษรสตริงบรรทัดเดียวและหลายบรรทัดและสามารถมีเนื้อหาใดก็ได้
  • คุณสมบัติ Unicode เพื่อรองรับการประมวลผลข้อความทั่วไปและขั้นสูงจะถูกเพิ่มลงในUnicode.Scalarชนิด
  • สำหรับเวกเตอร์ SIMD (คำสั่งเดียว, ข้อมูลหลายรายการ) ไลบรารีจะแสดงการดำเนินการบางส่วนในประเภท SIMD ที่โปรเซสเซอร์ส่วนใหญ่สนับสนุนในไลบรารี 
  • มีการปรับปรุงประสิทธิภาพของพจนานุกรมและชุด
  • การเพิ่มResultประเภทเพื่อปรับปรุงการจัดการข้อผิดพลาด
  • Swift Package Manager มีการตั้งค่าการสร้างเฉพาะเป้าหมายการมิเรอร์การอ้างอิงเป้าหมายการปรับใช้ที่กำหนดเองและความสามารถในการสร้างข้อมูลการครอบคลุมโค้ด
  • swift runคำสั่งสามารถนำเข้าห้องสมุดในวงอ่านเหตุการณ์พิมพ์ (REPL) โดยไม่ต้องสร้างปฏิบัติการ

จะดาวน์โหลด Swift 5 ได้ที่ไหน

คุณสามารถดาวน์โหลด Swift binaries สำหรับ Linux ได้จาก Swift.org นอกจากนี้ยังมีให้ใช้งานเป็นส่วนหนึ่งของ Apple Xcode 10.2 IDE ซึ่งหาได้จาก Apple Mac App Store