การเปิดตัว Fast Light Toolkit (FLTK) เวอร์ชัน 1.4.0 นำเสนอฟีเจอร์ทันสมัยให้กับไลบรารี GUI ที่มีประวัติอันน่าสนใจในวงการซอฟต์แวร์เอฟเฟกต์ภาพ ในขณะที่รุ่นล่าสุดมาพร้อมกับการรองรับ Wayland และความสามารถ high DPI การสนทนาในชุมชนได้เผยให้เห็นจุดกำเนิดที่น่าสนใจของ FLTK ในฐานะรากฐานของซอฟต์แวร์ตัดต่อภาพ Nuke ของ Digital Domain
จากฮอลลีวูดสู่โอเพนซอร์ส
การเดินทางของ FLTK เริ่มต้นในบริษัท Digital Domain ซึ่งถูกพัฒนาขึ้นเพื่อขับเคลื่อน Nuke เครื่องมือตัดต่อเอฟเฟกต์ภาพระดับไฮเอนด์ แม้ว่า Nuke จะเปลี่ยนไปใช้ Qt หลังจากถูกซื้อโดย The Foundry แต่มรดกของ FLTK ยังคงดำเนินต่อไปในฐานะชุดเครื่องมือ GUI ที่มีขนาดเล็กและมีประสิทธิภาพ ปรัชญาการออกแบบของไลบรารีนี้สืบทอดมาจาก Forms library สำหรับระบบ SGI โดยมีรากฐานร่วมกับ XForms และยังคงมุ่งเน้นที่ความเรียบง่ายและประสิทธิภาพ
คุณสมบัติทันสมัยกับการออกแบบแบบดั้งเดิม
การเปิดตัวเวอร์ชัน 1.4 แนะนำฟีเจอร์ทันสมัยที่สำคัญ รวมถึงการรองรับ Wayland การจัดการ High DPI ที่ดีขึ้นในทุกแพลตฟอร์ม และวิดเจ็ตสำหรับจัดวางใหม่ที่ยืดหยุ่นอย่าง Fl_Flex และ Fl_Grid อย่างไรก็ตาม การสนทนาในชุมชนชี้ให้เห็นถึงการถกเถียงที่ยังคงดำเนินอยู่เกี่ยวกับความสวยงามทางสายตาและฟังก์ชันการทำงานของ FLTK
ผมขอเลือก UI ที่ใช้งานได้ดีมากกว่าที่สวยงามทุกวัน (แทบจะไม่มีทางที่จะได้ทั้งสองอย่าง)
ความรู้สึกนี้สะท้อนทั่วทั้งชุมชน โดยนักพัฒนาชื่นชมประสิทธิภาพและขนาดที่เล็กของ FLTK ในขณะที่ยอมรับรูปลักษณ์แบบดั้งเดิม ชุดเครื่องมือนี้สามารถสร้างไฟล์ไบนารีแบบ static ที่มีขนาดเล็กเพียง 100KB รวมถึงมีการรองรับการเชื่อมต่อเครือข่าย รูปแบบไฟล์ภาพ และเสียงในตัว ทำให้น่าสนใจสำหรับนักพัฒนาที่ให้ความสำคัญกับประสิทธิภาพและความเรียบง่ายมากกว่าความสวยงามทันสมัย
คุณสมบัติหลักของ FLTK 1.4:
- รองรับ Wayland แบบใหม่พร้อมระบบสำรอง X11
- รองรับจอแสดงผลความละเอียดสูง (High DPI) บนทุกแพลตฟอร์ม
- วิดเจ็ตสำหรับจัดวางใหม่ ( Fl_Flex , Fl_Grid )
- รองรับ CMake เวอร์ชัน 3.15 ขึ้นไป
- รองรับ macOS จนถึงเวอร์ชัน 15.0
- ทางเลือกในการพึ่งพา OpenGL
- ขนาดไฟล์ไบนารีแบบ Static เริ่มต้นที่ 100KB
การใช้งานจริง
แม้จะมีสถานะเฉพาะกลุ่มเมื่อเทียบกับ Qt แต่ FLTK ก็ขับเคลื่อนแอปพลิเคชันที่หลากหลาย ตั้งแต่ซอฟต์แวร์ทางวิทยาศาสตร์ไปจนถึงยูทิลิตี้ระบบ ตัวอย่างที่โดดเด่นรวมถึง xdiskusage สำหรับวิเคราะห์พื้นที่ดิสก์ และเว็บเบราว์เซอร์ Dillo ซึ่งกำลังปรับปรุงการรองรับ UTF-8 ด้วย FLTK 1.4 การพึ่งพาที่น้อยและ API ที่ตรงไปตรงมาทำให้ชุดเครื่องมือนี้ยังคงเป็นที่ชื่นชอบสำหรับนักพัฒนาที่ต้องการโซลูชัน GUI ที่มีประสิทธิภาพและไม่ซับซ้อน
การเปิดตัว FLTK 1.4 ถือเป็นการพัฒนาที่สำคัญ เชื่อมโยงมรดกการออกแบบที่มีประสิทธิภาพเข้ากับความต้องการของระบบสมัยใหม่ ในขณะที่ยังคงยึดมั่นในความเรียบง่ายและประสิทธิภาพ