เปิดตัว Flet 1.0: สร้างแอป Production ครบทุกแพลตฟอร์มด้วย Python

เปิดตัว Flet 1.0: สร้างแอป Production ครบทุกแพลตฟอร์มด้วย Python

Flet เป็นโอเพนซอร์สเฟรมเวิร์กสำหรับ Python ที่ใช้ขุมพลังจาก Flutter ในการเรนเดอร์ UI ช่วยให้นักพัฒนาสามารถเขียน Python เพื่อสร้างวิดเจ็ตสไตล์ Material และ Cupertino บนระบบปฏิบัติการ iOS, Android, Windows, macOS, Linux รวมถึงเว็บเบราว์เซอร์ได้ทันที โดยไม่จำเป็นต้องมีความรู้ด้าน Dart, Swift, Kotlin หรือ JavaScript

ล่าสุดทีมงานได้เปิดตัว Flet 1.0 อย่างเป็นทางการ หลังจากการพัฒนาต่อเนื่องมานานกว่า 4 ปี เพื่อยืนยันว่าเฟรมเวิร์กนี้พร้อมสำหรับการสร้างแอปพลิเคชันใช้งานจริง (Production) แล้ว โดยผู้สนใจสามารถใช้งาน Flet 1.0.0 ผ่าน PyPI ภายใต้ลิขสิทธิ์ Apache 2.0 ซึ่งต้องการ Python 3.10 ขึ้นไปสำหรับชุด SDK และติดตั้งได้ง่ายๆ ด้วยคำสั่ง pip install 'flet[all]'

สำหรับการนำไปใช้งาน (Deployment) เครื่องมือ flet build รองรับการสร้างไฟล์งานถึง 8 รูปแบบ ได้แก่ apk, aab, ipa, ios-simulator, windows, macos, linux และ web ครอบคลุมทุกความต้องการในตลาดปัจจุบัน

The Test Matrix

ความมั่นใจในเวอร์ชันนี้มาจากการทดสอบ Unit Test ที่ครอบคลุม Python ตั้งแต่เวอร์ชัน 3.10 ถึง 3.14 ควบคู่ไปกับการทดสอบฝั่ง Flutter นอกจากนี้ยังมี Integration Test ที่ตรวจสอบการทำงานผ่านการเปรียบเทียบสกรีนช็อต เพื่อป้องกันบั๊กและการแสดงผลที่ผิดเพี้ยน (Visual Regressions)

ในการทดสอบแพ็คเกจไบนารี Flet ได้รันไลบรารีเนทีฟบน Android และ iOS Simulator โดยมีไปป์ไลน์สำหรับ Python 3.12, 3.13 และ 3.14 โดยเฉพาะ ขณะที่คำสั่ง flet test จะช่วยให้นักพัฒนาสามารถรัน Integration tests สำหรับแอปของคุณเอง โดยใช้ pytest เพื่อตรวจสอบแอปบนแพลตฟอร์มเนทีฟทั้ง 5 รวมถึง Linux ARM64

เวอร์ชัน Python และไลบรารีบนมือถือ

Flet จะทำการรวม Python 3.12, 3.13 หรือ 3.14 เข้าไปในตัวแอปโดยตรง ส่วนการทำงานบนเว็บจะใช้ Pyodide รุ่นที่สอดคล้องกัน นักพัฒนาสามารถศึกษารายละเอียดได้จาก วิธีการเลือกเวอร์ชัน Python

ปัจจุบัน ดัชนีแพ็คเกจของ Flet มีรายการที่พร้อมใช้งานมากกว่า 100 รายการ ไม่ว่าจะเป็น NumPy, pandas, Matplotlib, SciPy ไปจนถึง scikit-learn โดยมีโปรเจกต์ mobile-forge ที่ช่วยสร้างไฟล์ wheel สำหรับ iOS และ Android ให้โดยอัตโนมัติ

ประสิทธิภาพและการจัดทำแพ็คเกจ

ด้านประสิทธิภาพ Flet ได้ปรับปรุงระบบ UI reconciliation ให้ฉลาดขึ้น โดยจะข้ามการเปรียบเทียบที่ไม่จำเป็น ซึ่งผลการทดสอบ เบนช์มาร์กของเวอร์ชัน 0.83 พบว่าความเร็วในการทำ control diffing เพิ่มขึ้นถึง 6.7 เท่าในแอปเนทีฟ

นอกจากนี้ เทคโนโลยี dart-bridge ยังช่วยให้ Python และ Dart คุยกันได้โดยตรงภายในกระบวนการเดียว ลดภาระจากการใช้ socket และการออกแบบ การออกแบบแพ็คเกจ Android ใหม่ ยังทำให้โหลดแพ็คเกจจาก APK ได้โดยไม่ต้องแตกไฟล์

Declarative UI

แนวคิด Flet Declarative ถูกนำมาใช้เพื่อให้การเขียน UI เป็นไปตามสถานะของแอป (State) ช่วยให้จัดการคอมโพเนนต์ได้ง่ายขึ้น ซึ่งเป็นแนวทางเดียวกับที่ใช้ใน Flet Studio อย่างไรก็ตาม นักพัฒนายังคงเลือกใช้งานรูปแบบ Imperative แบบเดิมได้ตามความถนัด โดยสามารถศึกษาข้อแตกต่างได้ที่ เอกสารประกอบ

ความเข้ากันได้และเครื่องมือ AI เพื่อให้การพัฒนาราบรื่น Flet มี นโยบายความเข้ากันได้ ที่จะแจ้งเตือนก่อนยกเลิกการใช้ API ล่วงหน้า 3 รุ่นย่อย และยังมี Flet MCP server ที่ช่วยให้ AI สามารถเขียนโค้ด Flet ได้แม่นยำตามเวอร์ชันที่ใช้งาน รวมถึง Flet Studio ที่รันบนเบราว์เซอร์พร้อมผู้ช่วย AI ในตัว

ประเด็นสำคัญที่ต้องรู้

  • Flet 1.0.0 ใช้ลิขสิทธิ์ Apache 2.0 และต้องการ Python 3.10 ขึ้นไป
  • รองรับการสร้างแอป (Build) ครอบคลุม 8 เป้าหมายแพลตฟอร์ม
  • มาพร้อม Python 3.12-3.14 และแพ็คเกจเสริมสำหรับมือถือกว่า 100 รายการ
  • ประสิทธิภาพการประมวลผล UI เร็วขึ้นสูงสุด 6.7 เท่า
  • ผู้ที่อัปเกรดจากเวอร์ชัน 0.28 ต้องระวังการเปลี่ยนแปลงสำคัญเรื่อง event loop ของ Handlers
Source: MarkTechPost
ดูแลงานแปลและเรียบเรียงโดย NatapolK

ความคิดเห็น (0)

เข้าสู่ระบบเพื่อร่วมแสดงความเห็น

สมัครสมาชิก

มาเป็นคนแรกที่แสดงความเห็นกันเลยโบร