3 คะแนน โดย xguru 2024-08-12 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เลือก Swift เป็นภาษาผู้สืบทอด C++ ที่เหมาะสมที่สุดสำหรับ Ladybird Browser
  • ตลอดช่วงหลายเดือนที่ผ่านมา ได้ขอให้หลายคนลองเขียนบางส่วนของโปรเจ็กต์ใหม่ด้วยภาษาอื่น
  • ฟีดแบ็กที่ได้ชัดเจนมากว่าทุกคนชื่นชอบ Swift

เหตุผลที่ชอบ Swift

  • Swift มีทั้งความปลอดภัยด้านหน่วยความจำและความปลอดภัยจาก data race (ตั้งแต่ v6)
  • เป็นภาษาโมเดิร์นที่มี ergonomics ที่แข็งแกร่ง
  • สเปกเว็บและภายในของเบราว์เซอร์มีความเป็นเชิงวัตถุสูงมาก และงานจะง่ายขึ้นเมื่อสามารถจำลองสเปกเหล่านั้นในโค้ดได้อย่างใกล้เคียง
  • Swift รองรับ object-oriented แบบ first-class และเหนือกว่า C++ อย่างมากในหลายด้าน
  • ทีม Swift ยังลงทุนอย่างมากกับการทำงานร่วมกับ C++ ทำให้มีเส้นทางที่ใช้งานได้จริงสำหรับการนำมาใช้แบบค่อยเป็นค่อยไป แทนการเขียนใหม่ครั้งใหญ่
โฆษณา

ความผูกพันที่แน่นแฟ้นกับ Apple

  • ในอดีต Swift มีความเชื่อมโยงอย่างมากกับ Apple และแพลตฟอร์มของ Apple
  • อย่างไรก็ตาม ในช่วง 1 ปีที่ผ่านมา มีความพยายามทำให้ swiftlang เป็นอิสระมากขึ้น (เช่น ตอนนี้อยู่ใน GitHub organization แยกต่างหาก ไม่ใช่ apple อีกต่อไป)
  • การรองรับแพลตฟอร์มที่ไม่ใช่ Apple และการรองรับสภาพแวดล้อมพัฒนาที่อิง LSP อื่น ๆ ก็กำลังดีขึ้นเช่นกัน

แผนต่อจากนี้

  • ปัจจุบันรีลีสของ Swift ยังมาพร้อม Clang เวอร์ชันที่เก่าเกินไปสำหรับการทำความเข้าใจโค้ดเบส C++ ที่มีอยู่ จึงยังใช้ตอนนี้ไม่ได้
  • แต่เมื่อ Swift 6 ออกจากสถานะเบต้าในฤดูใบไม้ร่วงนี้ ก็จะเริ่มใช้งาน
  • ไม่มีภาษาที่สมบูรณ์แบบ และยังมีอีกมากที่ยังไม่รู้
  • ไม่ทราบว่ามีใครเคยทำงานกับเอนจินเบราว์เซอร์ด้วย Swift มาก่อนหรือไม่ ดังนั้นจึงน่าจะได้ส่งฟีดแบ็กให้ทีม Swift
  • ตื่นเต้นมาก! ต้องพา Ladybird ไปสู่ความปลอดภัยด้านหน่วยความจำ และก้าวแรกคือการเลือกภาษาผู้สืบทอดที่สามารถเริ่มนำมาใช้ได้ในเร็ว ๆ นี้