Phụ lục:
Flutter on the web
Flutter 2 on desktops, foldables, and embedded devices
The growing Flutter ecosystem
Dart: The secret sauce behind Flutter
Flutter 2: Available now
Hôm nay, chúng tôi sẽ công bố Flutter 2: một bản nâng cấp lớn cho Flutter cho phép các nhà phát triển tạo các ứng dụng đẹp, nhanh chóng và di động cho bất kỳ nền tảng nào. Với Flutter 2, bạn có thể sử dụng cùng một cơ sở mã để gửi các ứng dụng gốc cho năm hệ điều hành: IOS, Android, Windows, macOS và Linux; cũng như trải nghiệm web nhắm mục tiêu các trình duyệt như Chrome, Firefox, Safari hoặc Edge. Flutter thậm chí có thể được nhúng vào ô tô, TV và thiết bị gia dụng thông minh, mang đến trải nghiệm di động và lan tỏa nhất cho thế giới điện toán xung quanh.
Mục tiêu của chúng tôi là thay đổi cơ bản cách các nhà phát triển nghĩ về việc xây dựng
ứng dụng, bắt đầu không phải với nền tảng bạn đang nhắm mục tiêu mà là với trải nghiệm
bạn muốn tạo. Flutter cho phép bạn tạo ra những trải nghiệm tuyệt đẹp trong đó thương hiệu
và thiết kế của bạn đi đầu. Flutter rất nhanh, biên dịch nguồn của bạn thành mã máy,
nhưng nhờ sự hỗ trợ của chúng tôi về tải lại nóng trạng thái, bạn vẫn có được năng suất
của môi trường được thông dịch, cho phép bạn thực hiện các thay đổi trong khi ứng dụng
của bạn đang chạy và xem kết quả ngay lập tức. Và Flutter đang mở, với hàng nghìn cộng
tác viên bổ sung vào khung cốt lõi và mở rộng nó với một hệ sinh thái các gói.
Trong Flutter 2, được phát hành ngày hôm nay, chúng tôi đã mở rộng Flutter từ khung di
động sang khung di động, cho phép các ứng dụng của bạn chạy trên nhiều nền tảng khác
nhau mà không có hoặc ít thay đổi. Chỉ riêng trên Cửa hàng Play đã có hơn 150.000 ứng
dụng Flutter và mọi ứng dụng đều được nâng cấp miễn phí với Flutter 2 vì giờ đây chúng có
thể phát triển để nhắm mục tiêu đến máy tính để bàn và web mà không cần viết lại.
Khách hàng từ khắp nơi trên thế giới đang sử dụng Flutter, bao gồm các ứng dụng phổ
biến như WeChat, Grab, Yandex Go, Nubank, Sonos, Fastic, Betterment và realtor.com.
Tại Google, chúng tôi phụ thuộc vào Flutter và hơn một nghìn kỹ sư tại Google đang xây
dựng ứng dụng với Dart và Flutter. Trên thực tế, nhiều sản phẩm trong số đó đã được
vận chuyển, bao gồm Stadia, Google One và Google Nest Hub.
Google Pay đã chuyển sang Flutter vài tháng trước cho ứng dụng di động hàng đầu của họ
và họ đã đạt được những thành tựu lớn về năng suất và chất lượng. Bằng cách thống nhất
cơ sở mã, nhóm đã loại bỏ sự chênh lệch về tính năng giữa các nền tảng và loại bỏ hơn
nửa triệu dòng mã. Google Pay cũng báo cáo rằng các kỹ sư của họ làm việc hiệu quả hơn
rất nhiều, với việc giảm đáng kể nợ kỹ thuật và các quy trình phát hành thống nhất như đánh
và thử nghiệm bảo mật trên cả IOS và Android.
1. Flutter on the web
Có lẽ thông báo lớn nhất duy nhất trong Flutter 2 là hỗ trợ chất lượng sản xuất cho web.
Nền tảng ban đầu của web là tập trung vào tài liệu. Nhưng nền tảng web đã phát triển để
bao gồm các API nền tảng phong phú hơn cho phép các ứng dụng có độ phức tạp cao với
đồ họa 2D và 3D được tăng tốc phần cứng cũng như các API sơn và bố cục linh hoạt. Hỗ
trợ web của Flutter được xây dựng dựa trên những đổi mới này, cung cấp một khuôn khổ
tập trung vào ứng dụng để tận dụng tối đa tất cả những gì web hiện đại cung cấp.
Bản phát hành đầu tiên này tập trung vào ba tình huống ứng dụng cụ thể:
Progressive web apps (PWAs) kết hợp phạm vi tiếp cận của web với khả năng
của ứng dụng dành cho máy tính để bàn.
Single page apps (SPAs) tải một lần và truyền dữ liệu đến và đi từ các dịch vụ
internet.
Đưa các ứng dụng di động Flutter hiện có lên web, cho phép chia sẻ mã cho cả
hai trải nghiệm.
Trong những tháng trước, khi chúng tôi chuẩn bị cho việc phát hành ổn định hỗ trợ web,
chúng tôi đã đạt được nhiều tiến bộ trong việc tối ưu hóa hiệu suất, thêm một công cụ kết
xuất hỗ trợ CanvasKit mới được xây dựng với WebAssembly. Flutter Plasma, một bản demo
do thành viên cộng đồng Felix Blaschke xây dựng, cho thấy sự dễ dàng trong việc xây dựng
trải nghiệm đồ họa web tinh vi với Dart và Flutter cũng có thể chạy nguyên bản trên máy tính
để bàn hoặc thiết bị di động.
Chúng tôi đã mở rộng Flutter để cung cấp nền tảng web tốt nhất. Trong những tháng gần
đây, chúng tôi đã thêm tính năng tự động điền văn bản, kiểm soát các URL trên thanh địa chỉ
và định tuyến cũng như các tệp kê khai PWA. Và vì trình duyệt trên máy tính để bàn cũng
quan trọng như trình duyệt trên thiết bị di động, chúng tôi đã thêm thanh cuộn tương tác
và phím tắt, tăng mật độ nội dung mặc định ở chế độ máy tính để bàn và thêm hỗ trợ trình
đọc màn hình cho khả năng truy cập trên Windows, macOS và Chrome OS.
Một số ví dụ về các ứng dụng web được xây dựng bằng Flutter đã có sẵn. Trong số các
nhà giáo dục, iRobot nổi tiếng với Root educational robots phổ biến của họ. Hỗ trợ sản xuất
của Flutter cho web cho phép iRobot sử dụng môi trường lập trình giáo dục hiện có của họ
và chuyển nó lên web, mở rộng tính khả dụng của nó cho Chromebook và các thiết bị
khác trong đó trình duyệt là lựa chọn tốt nhất. Bài đăng trên blog của iRobot có tất cả các chi
tiết về tiến trình của họ cho đến nay và lý do tại sao họ chọn Flutter.
Một ví dụ khác là Rive, người cung cấp cho các nhà thiết kế một công cụ mạnh mẽ để tạo
hoạt ảnh tùy chỉnh có thể chuyển đến bất kỳ nền tảng nào. Ứng dụng web cập nhật của họ,
hiện đã có trong bản beta, được xây dựng hoàn toàn bằng Flutter và là một bức thư tình
gửi đến tất cả những gì Flutter có thể cung cấp trong môi trường này.
2. Flutter 2 on desktops, foldables, and embedded devices
Ngoài các thiết bị di động truyền thống và web, Flutter đang ngày càng mở rộng sang các
loại thiết bị khác và chúng tôi đã nêu bật ba mối quan hệ đối tác trong bài phát biểu hôm
nay chứng minh tính di động của Flutter.
Để bắt đầu, Canonical đang hợp tác với chúng tôi để đưa Flutter lên máy tính để bàn, với các
kỹ sư đóng góp mã để hỗ trợ phát triển và triển khai trên Linux. Trong sự kiện hôm nay,
nhóm Ubuntu đã trình chiếu bản demo ban đầu về ứng dụng trình cài đặt mới của họ đã
được viết lại bằng Flutter. Đối với Canonical, điều quan trọng là chúng có thể mang lại
trải nghiệm tuyệt vời nhưng đẹp mắt trên nhiều cấu hình phần cứng khác nhau. Trong tương
lai, Flutter là lựa chọn mặc định cho các ứng dụng dành cho máy tính để bàn và thiết bị di
động trong tương lai do Canonical tạo ra.
Thứ hai, Microsoft đang tiếp tục mở rộng hỗ trợ cho Flutter. Ngoài sự hợp tác liên tục để
cung cấp hỗ trợ Windows chất lượng cao trong Flutter, hôm nay Microsoft còn phát hành
các đóng góp cho công cụ Flutter hỗ trợ loại thiết bị Android có thể gập lại mới nổi. Các thiết
bị này giới thiệu các mẫu thiết kế mới, với các ứng dụng có thể mở rộng nội dung hoặc tận
dụng tính chất màn hình kép để cung cấp trải nghiệm song song. Trong một bài đăng trên
blog từ nhóm kỹ thuật Surface, họ thể hiện công việc của mình và mời những người khác
tham gia cùng họ để hoàn thành việc triển khai chất lượng cao hoạt động trên Surface Duo
và các thiết bị khác.
Cuối cùng, Toyota, nhà sản xuất ô tô bán chạy nhất thế giới, đã công bố kế hoạch mang lại
trải nghiệm kỹ thuật số tốt nhất trên thị trường cho xe, bằng cách xây dựng hệ thống thông
tin giải trí được cung cấp bởi Flutter. Sử dụng Flutter đánh dấu một sự khởi đầu lớn trong
cách tiếp cận so với cách phần mềm trong xe đã được phát triển trong quá khứ. Toyota đã
chọn Flutter vì hiệu suất cao và tính nhất quán của trải nghiệm, khả năng lặp lại nhanh chóng
và công thái học dành cho nhà phát triển cũng như cơ chế cảm ứng bậc trên điện thoại
thông minh. Bằng cách sử dụng API nhúng của Flutter, Toyota có thể điều chỉnh Flutter cho
các nhu cầu riêng của hệ thống trên xe.
Chúng tôi rất vui được tiếp tục hợp tác với Toyota và những người khác để đưa Flutter đến
với xe cộ, TV và các thiết bị nhúng khác và chúng tôi hy vọng sẽ chia sẻ thêm các ví dụ
khác trong những tháng tới.
3. The growing Flutter ecosystem
Hiện có hơn 15.000 gói cho Flutter và Dart: từ các công ty như Amazon, Microsoft, Adobe, Alibaba, eBay và Square; đến các gói chính như Lottie, Sentry và SVG, cũng như các gói ưa thích của Flutter như sign_in_with_apple, google_fonts, geolocator và sqflite.
Hôm nay, chúng tôi sẽ công bố bản phát hành beta của
Quảng cáo trên điện thoại di động của Google cho Flutter, một SDK mới hoạt động với
AdMob và AdManager để cung cấp nhiều định dạng quảng cáo, bao gồm quảng cáo biểu
ngữ, quảng cáo xen kẽ, quảng cáo gốc và video có tặng thưởng. Chúng tôi đã thử nghiệm
SDK này với một số khách hàng chính, chẳng hạn như Sua Música, nền tảng âm nhạc lớn
nhất dành cho các nghệ sĩ độc lập ở Mỹ Latinh và hiện chúng tôi đã sẵn sàng mở SDK
quảng cáo trên thiết bị di động của Google cho Flutter để áp dụng rộng rãi hơn.
Chúng tôi cũng sẽ công bố các bản cập nhật
Flutter plug-ins for several core Firebase services: Xác thực, Cloud Firestore, Chức năng
đám mây, Nhắn tin qua đám mây, Bộ nhớ trên đám mây và Crashlytics, bao gồm hỗ trợ về
tính an toàn bằng âm thanh và đại tu gói Nhắn tin qua đám mây.
4. Dart: The secret sauce behind Flutter
Như chúng tôi đã lưu ý, Flutter 2 có thể di chuyển đến nhiều nền tảng và hệ số hình thức
khác nhau. Việc chuyển đổi dễ dàng sang hỗ trợ web, máy tính để bàn và nhúng một phần
lớn là nhờ vào Dart, ngôn ngữ lập trình của Google được tối ưu hóa để phát triển đa nền
tảng.
Dart kết hợp một bộ khả năng độc đáo để xây dựng ứng dụng:
- Tính di động không có gì đáng ngạc nhiên, với các trình biên dịch tạo mã máy Intel và ARM hiệu suất cao cho thiết bị di động và máy tính để bàn, cũng như đầu ra JavaScript được tối ưu hóa chặt chẽ cho web. Cùng một mã nguồn khung Flutter biên dịch cho tất cả các mục tiêu này.
- Phát triển lặp đi lặp lại với tải lại nóng trạng thái trên máy tính để bàn và thiết bị di động, cũng như cấu trúc ngôn ngữ được thiết kế cho các mẫu không đồng bộ, đồng thời của lập trình giao diện người dùng hiện đại.
- Hiệu suất cấp Google trên tất cả các nền tảng này, với tính năng an toàn tuyệt đối đảm bảo các ràng buộc không có trong thời gian chạy cũng như trong quá trình phát triển.
Không có ngôn ngữ nào khác kết hợp tất cả các khả năng này; có lẽ đây là lý do tại sao Dart
là một trong những ngôn ngữ phát triển nhanh nhất trên GitHub.
Dart 2.12, có sẵn ngày hôm nay, là bản phát hành lớn nhất của chúng tôi kể từ phiên bản
2.0, với sự hỗ trợ về tính an toàn bằng âm thanh. An toàn âm thanh null có khả năng xóa bỏ
các ngoại lệ tham chiếu null đáng sợ, cung cấp đảm bảo khi phát triển và thời gian chạy mà
các loại chỉ có thể chứa giá trị null nếu nhà phát triển lựa chọn rõ ràng. Hơn hết, tính năng
này không phải là một thay đổi đột ngột: bạn có thể thêm dần nó vào mã của mình theo tốc
độ của riêng bạn, với công cụ di chuyển có sẵn để trợ giúp bạn khi bạn đã sẵn sàng.
Bản cập nhật hôm nay cũng bao gồm việc triển khai ổn định FFI, cho phép bạn viết mã
hiệu suất cao tương tác với các API dựa trên C;
công cụ lập hồ sơ và nhà phát triển tích hợp mới được viết bằng Flutter; và một số cải tiến
về hiệu suất và kích thước giúp nâng cấp thêm mã của bạn mà không mất phí ngoài việc
biên dịch lại. Để biết thêm thông tin, hãy xem bài đăng trên blog thông báo dành riêng cho
Dart 2.12.
5. Flutter 2: Available now
Còn nhiều điều để nói về Flutter 2 hơn chúng tôi có thể đưa vào bài viết này. Trên thực tế,
danh sách thô các yêu cầu kéo được hợp nhất là một tài liệu 200 trang! Hãy truy cập blog
kỹ thuật riêng biệt trên Flutter 2 để biết thêm thông tin về nhiều tính năng mới và cải tiến
hiệu suất mà chúng tôi nghĩ sẽ làm hài lòng các nhà phát triển Flutter hiện có và tải xuống
ngay hôm nay.
Chúng tôi cũng có một mẫu mới lớn giới thiệu mọi thứ mà chúng tôi vừa đề cập, được xây
dựng với sự hợp tác của gskinner, một nhóm thiết kế từng đoạt giải thưởng có trụ sở
tại Edmonton, Canada. Flutter Folio là một ứng dụng sổ lưu niệm được thiết kế cho tất cả
các thiết bị của bạn. Trải nghiệm màn hình nhỏ được thiết kế để ghi lại nội dung; màn hình
lớn hơn hỗ trợ chỉnh sửa với các thành ngữ dành riêng cho máy tính để bàn và máy tính
bảng; và trải nghiệm web được điều chỉnh để chia sẻ. Tất cả những trải nghiệm phù hợp
này chia sẻ cùng một cơ sở mã, là mã nguồn mở và có sẵn cho bạn sử dụng.
Nhận xét
Đăng nhận xét