MarkTechPost
85

Sản phẩm

Flet 1.0 chính thức ra mắt: Xây dựng ứng dụng Web, Desktop và Mobile chuyên nghiệp chỉ với Python

(giờ Việt Nam)

Tóm tắt AI

Flet 1.0 đã sẵn sàng cho môi trường sản xuất, cho phép lập trình viên dùng Python để tạo ứng dụng đa nền tảng (Web, Windows, macOS, Linux, iOS, Android) dựa trên sức mạnh render của Flutter.

Bản dịch AI

Flet 1.0 Released: Build Production Web, Desktop and Mobile Apps in Python Only

Flet là một framework Python mã nguồn mở giúp hiển thị giao diện người dùng (UI) bằng Flutter. Bạn chỉ cần viết code Python, và Flet sẽ vẽ các widget Material và Cupertino trên iOS, Android, Windows, macOS, Linux và trình duyệt. Không cần phải biết Dart, Swift, Kotlin hay JavaScript.

Tuần trước, đội ngũ Flet đã phát hành Flet 1.0 và tuyên bố phiên bản này đã sẵn sàng để xây dựng các ứng dụng thực tế (production apps). Bản phát hành này ra mắt sau khoảng bốn năm kể từ khi dự án bắt đầu.

Có thể triển khai được không? Có, ngay từ bây giờ. Flet 1.0.0 đã có mặt trên PyPI theo giấy phép Apache 2.0, yêu cầu Python 3.10 trở lên cho SDK và cài đặt bằng lệnh pip install 'flet[all]'. Lệnh flet build sẽ tạo ra các tệp thực thi cho Windows, macOS, Linux, iOS, Android và web. CLI hỗ trợ tám nền tảng đích: apk, aab, ipa, ios-simulator, windows, macos, linux và web.

Ma trận kiểm thử (The Test Matrix)

Flet chạy các bài kiểm thử đơn vị (unit tests) của framework trên các phiên bản Python từ 3.10 đến 3.14, song song với các bài kiểm thử cho phía Flutter. Các bài kiểm thử tích hợp (integration tests) cho điều khiển và ví dụ sẽ kiểm tra hành vi và so sánh ảnh chụp màn hình, giúp phát hiện các lỗi chức năng và lỗi hồi quy về giao diện.

Các bài kiểm thử gói nhị phân Python thực thi trên các thư viện native của Android và trình mô phỏng iOS, với quy trình mobile pipeline hỗ trợ xây dựng cho Python 3.12, 3.13 và 3.14. Các bài kiểm thử tích hợp flet build sẽ biên dịch ứng dụng trên các phiên bản Python đó cho cả sáu nền tảng, và flet test sẽ khởi chạy ứng dụng đã đóng gói để kiểm tra trên tất cả năm nền tảng native, bao gồm cả Linux ARM64.

Bạn cũng có thể tự viết các bài kiểm thử tương tự. Các bài kiểm thử tích hợp cho ứng dụng của riêng bạn sử dụng pytest, chạy thông qua flet test dựa trên bản build đã đóng gói, với tính năng so sánh ảnh chụp màn hình trên Android và iOS.

Các phiên bản Python và thư viện di động

Flet đóng gói Python 3.12, 3.13 hoặc 3.14 cùng với ứng dụng của bạn, và các bản build web sử dụng phiên bản Pyodide tương ứng. Xem cách chọn phiên bản Python tại đây.

Chỉ mục gói của Flet hiện liệt kê hơn 100 gói, bao gồm NumPy, pandas, Matplotlib, Pillow, SciPy, scikit-learn, cryptography và pydantic-core, cùng với các thư viện native hỗ trợ. Quy trình mobile-forge tự động hóa việc xây dựng các wheel cho iOS và Android. Khả năng tương thích vẫn phụ thuộc vào từng gói và nền tảng đích.

Hiệu năng và Đóng gói

Flet hiện theo dõi các thuộc tính đã thay đổi và bỏ qua các so sánh không cần thiết trong quá trình đối chiếu UI (UI reconciliation), với các bài benchmark 0.83 cho thấy hiệu suất cải thiện lên tới 6,7 lần trong việc so sánh sự khác biệt của các điều khiển (control diffing). Trong các ứng dụng native đã đóng gói, dart-bridge cho phép các runtime của Python và Dart giao tiếp bên trong một tiến trình duy nhất, không cần socket, với các kênh chuyên dụng cho dữ liệu nhị phân.

Việc đóng gói cho phép biên dịch bytecode theo mặc định, và quy trình đóng gói Android được thiết kế lại giúp tải các gói Python trực tiếp từ APK mà không cần giải nén.

Giao diện người dùng khai báo (Declarative UI)

Flet Declarative mô tả UI như một hàm của trạng thái ứng dụng, được tổ chức thành các thành phần có thể tái sử dụng. Bản thân Flet Studio và ứng dụng di động Flet cũng là các ứng dụng Flet theo phong cách khai báo. Phong cách mệnh lệnh (imperative style) vẫn được hỗ trợ. Hãy so sánh cả hai trong tài liệu hướng dẫn.

Khả năng tương thích và Công cụ AI

Chính sách tương thích sẽ đưa các API vào trạng thái ngừng hỗ trợ (deprecated) trước khi loại bỏ, với thời gian ngừng hỗ trợ mặc định là ba phiên bản phụ (minor releases).

Flet MCP server cung cấp cho các trợ lý lập trình AI thông tin API Flet theo từng phiên bản, cùng với các công cụ để tìm kiếm ví dụ, biểu tượng và các tùy chọn CLI. Flet Studio chạy trên trình duyệt với một tác nhân AI tích hợp, và các dự án có thể được tải xuống để phát triển cục bộ.

Giải thích tương tác

Nội dung nhúng bên dưới sẽ đi qua năm cơ chế: quy trình build pipeline trên tám nền tảng đích, trạng thái khai báo so với mệnh lệnh, các lớp kiểm thử CI, đóng gói runtime với các mobile wheel, và bẫy vòng lặp sự kiện (event loop trap). Màu sắc tuân theo các token thương hiệu của Flet.

Những điểm chính cần lưu ý

Hãy xem thông báo phát hành Flet 1.0. Mọi công lao đều thuộc về nhà nghiên cứu của dự án này. Ngoài ra, hãy thoải mái theo dõi chúng tôi trên Twitter và đừng quên tham gia SubReddit 150k+ ML của chúng tôi và đăng ký nhận Bản tin (Newsletter). Khoan đã! Bạn có dùng Telegram không? Bây giờ bạn cũng có thể tham gia cùng chúng tôi trên Telegram.

Bạn cần hợp tác với chúng tôi để quảng bá GitHub Repo, trang Hugging Face, bản phát hành sản phẩm hoặc hội thảo trực tuyến (Webinar), v.v.? Hãy kết nối với chúng tôi.

Michal Sutter là một chuyên gia khoa học dữ liệu với bằng Thạc sĩ Khoa học Dữ liệu từ Đại học Padova. Với nền tảng vững chắc về phân tích thống kê, học máy và kỹ thuật dữ liệu, Michal xuất sắc trong việc chuyển đổi các tập dữ liệu phức tạp thành những thông tin chi tiết có giá trị thực tiễn.

PythonFletPhát triển ứng dụngĐa nền tảngLập trình
Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ MarkTechPost. Liên kết bài gốc ở phía trên. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.