- เลือก 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 ไปสู่ความปลอดภัยด้านหน่วยความจำ และก้าวแรกคือการเลือกภาษาผู้สืบทอดที่สามารถเริ่มนำมาใช้ได้ในเร็ว ๆ นี้
1 ความคิดเห็น