Microsoft โอเพ่นซอร์สไลบรารีมาตรฐาน C ++ ที่มาพร้อมกับ Visual Studio

ในการประชุม CppCon 2019 ที่จัดขึ้นในวันนี้ Microsoft ประกาศ เกี่ยวกับการเปิดโค้ดการใช้งานไลบรารีมาตรฐาน C++ (STL, C++ Standard Library) ซึ่งเป็นส่วนหนึ่งของชุดเครื่องมือ MSVC และสภาพแวดล้อมการพัฒนา Visual Studio ไลบรารีใช้คุณสมบัติที่อธิบายไว้ในมาตรฐาน C++14 และ C++17 ปัจจุบัน และยังพัฒนาไปสู่การรองรับมาตรฐาน C++20 ในอนาคต ตามการเปลี่ยนแปลงในร่างการทำงานปัจจุบัน รหัส เปิดอยู่ ภายใต้ลิขสิทธิ์ Apache 2.0 โดยมีข้อยกเว้นสำหรับไฟล์ไบนารี่ที่แก้ปัญหาการรวมไลบรารีรันไทม์ในไฟล์ปฏิบัติการที่สร้างขึ้น

การพัฒนาไลบรารีนี้ในอนาคตได้รับการวางแผนที่จะดำเนินการเป็นโครงการเปิดที่พัฒนาบน GitHub โดยยอมรับคำขอดึงจากนักพัฒนาบุคคลที่สามพร้อมการแก้ไขและการใช้งานคุณสมบัติใหม่ (การมีส่วนร่วมในการพัฒนาจำเป็นต้องลงนามในข้อตกลง CLA ในการถ่ายโอน ของสิทธิในทรัพย์สินตามรหัสที่โอน) โปรดทราบว่าการโอนการพัฒนา STL ไปยัง GitHub จะช่วยให้ลูกค้า Microsoft ติดตามความคืบหน้าของการพัฒนา ทดลองใช้การเปลี่ยนแปลงล่าสุด และช่วยตรวจสอบคำขอที่เข้ามาเพื่อเพิ่มนวัตกรรม

โอเพ่นซอร์สยังจะอนุญาตให้ชุมชนใช้การใช้งานฟีเจอร์สำเร็จรูปจากมาตรฐานใหม่ในโครงการอื่น ๆ ตัวอย่างเช่น สิทธิ์ใช้งานโค้ดถูกเลือกเพื่อให้มีความสามารถในการแชร์โค้ดกับไลบรารี libc++ จากโครงการ LLVM STL และ libc++ แตกต่างกันในการแสดงโครงสร้างข้อมูลภายใน แต่หากต้องการ นักพัฒนา libc++ สามารถพอร์ตฟังก์ชันการทำงานที่น่าสนใจจาก STL (เช่น charconv) หรือทั้งสองโครงการสามารถร่วมกันพัฒนานวัตกรรมบางอย่างได้ ข้อยกเว้นที่เพิ่มในใบอนุญาต Apache จะลบข้อกำหนดในการอ้างอิงการใช้ผลิตภัณฑ์ดั้งเดิมเมื่อส่งมอบไบนารีที่คอมไพล์ด้วย STL ให้กับผู้ใช้ปลายทาง

เป้าหมายหลักของโครงการ ได้แก่ การปฏิบัติตามข้อกำหนดข้อกำหนดอย่างครบถ้วน ทำให้มั่นใจได้ถึงประสิทธิภาพสูง ใช้งานง่าย (เครื่องมือแก้ไขข้อบกพร่อง การวินิจฉัย การตรวจจับข้อผิดพลาด) และความเข้ากันได้ในระดับซอร์สโค้ดและ ABI กับ Visual Studio 2015/2017 รุ่นก่อนหน้า ในด้านที่ Microsoft ไม่สนใจในการพัฒนาคือการพอร์ตไปยังแพลตฟอร์มอื่นและการเพิ่มส่วนขยายที่ไม่ได้มาตรฐาน

ที่มา: opennet.ru

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