Tags:
Node Thumbnail

Chrome 64 เปลี่ยนคอมไพล์เลอร์จาก Microsoft Visual C++ (MSVC) มาเป็น Clang ให้เหมือนกับแพลตฟอร์มอื่นๆ ได้แก่ macOS, iOS, Linux, Chrome OS, Android, และ Windows

เหตุผลสำคัญในการเปลี่ยนคอมไพล์เลอร์คือการรวมคอมไพล์เลอร์เข้ามาเป็นตัวเดียวเพื่อลดระยะเวลาการพัฒนาลง เพราะโปรแกรมเมอร์มักคุ้นกับการคอมไพล์บนแพลตฟอร์มที่ตัวเองดูแลอยู่เท่านั้น เมื่อโค้ดคอมไพล์ไม่ผ่านบนแพลตฟอร์มอื่นการแก้ไขก็จะใช้เวลานาน

การปรับมาใช้คอมไพล์เลอร์โอเพนซอร์สอย่าง Clang ยังมีความได้เปรียบคือทีมงาน Chrome สามารถใช้ Clang เวอร์ชั่นที่กำลังพัฒนาอยู่ตรวจสอบได้ว่ามีปัญหากับโค้ดในโครงการหรือไม่ หากมีปัญหาก็พูดคุยกับทีมพัฒนา Clang ได้ทันที ขณะที่ MSVC ต้องรอไมโครซอฟท์ออกเวอร์ชั่นใหม่แต่ละรอบอาจจะนานเป็นปี การใช้คอมไพลเลอร์ตัวเดียวอย่าง Clang ยังเปิดทางให้โปรแกรมเมอร์สามารถใช้ฟีเจอร์ใหม่ๆ ของ C++ ได้โดยไม่ต้องรอคอมไพล์เลอร์ทุกตัวรองรับเหมือนกัน

ข้อเสียคือโดยเฉลี่ยแล้ว Clang จะคอมไพล์ได้ไบนารีขนาดใหญ่ขึ้นในบางกรณี โดยเฉพาะไบนารี 32 บิต และประสิทธิภาพการคอมไพล์ในเครื่องเดียวก็ช้าลงประมาณ 15%

แม้จะเปลี่ยนคอมไพล์เลอร์ แต่กระบวนการพัฒนาโดยรวมยังต้องใช้ Visual Studio อยู่ โดย Chrome ใช้ไฟล์ header และเครื่องมืออื่นๆ ของ Visual Studio ต่อไป

ที่มา - LLVM Blog

Get latest news from Blognone

Comments

By: Hadakung
iPhoneWindows PhoneAndroidWindows
on 6 March 2018 - 14:19 #1036893

สรุป อืดกว่าเดิมแหละชาวโครม....

By: lew
FounderJusci's WriterMEconomicsAndroid
on 6 March 2018 - 14:45 #1036897 Reply to:1036893
lew's picture

ตอนรันประสิทธิภาพไม่ต่างกันนะครับ


lewcpe.com, @wasonliw