.NET Multi-platform App UI (.NET MAUI) là một framework dùng để để tạo ra các ứng dụng gốc cho điện thoại và máy tính sử dụng ngôn ngữ lập trình C# và XAML.
Sử dụng .NET MAUI, bạn có thể tạo ra các ứng dụng có thể chạy trên hệ điều hành Android, iOS, macOS, và Windows bằng một mã nguồn duy nhất.
.NET MAUI là mã nguồn mở và nó là sự cải tiến của Xamarin.Forms trước đây (chỉ dành để tạo ứng dụng di động), nhưng MAUI lại có thể tạo cả ứng dụng di động và ứng dụng máy tính. Các thành phần giao diện của .NET MAUI cũng được xây dựng lại từ đầu để nâng cao hiệu suất và khả năng mở rộng. Nếu bạn từng dùng Xamarin.Forms trước đó thì bạn sẽ nhận thấy nó có nhiều điểm tương đồng với .NET MAUI.

Tuy nhiên, Xamarin và MAUI có vài điểm khác nhau. Khi sử dụng .NET MAUI, bạn có thể tạo ra một ứng dụng đa nền tảng sử dụng một project duy nhất và có thể thêm các mã nguồn riêng biệt cho từng nền tảng nếu cần. Mục tiêu chính của .NET MAUI là cho phép người dùng triển khai càng nhiều logic và UI nhất có thể trong một mã nguồn duy nhất.
.NET MAUI dành cho ai ?
.NET MAUI dành lập trình viên muốn:
Viết một ứng dụng bằng XAML và C# từ một mã nguồn duy nhất trong Visual Studio
Chia sẻ bố cục và thiết UI nhiều nền tảng với nhau
Chia sẻ mã nguồn, kiểm tra và thực hiện các logic giữa các nền tảng
.NET MAUI hoạt động thế nào ?
.NET MAUI thống nhất các API của Android, iOS, macOS và Windows thành một API duy nhất cho phép người dùng viết một lần và chạy mọi nền tảng. Đồng thời cung cấp các quyền truy cập sâu vào mọi khía cạnh của từng nền tảng gốc.
.NET 6 và các phiên bản cao hơn cung cấp chuỗi các nền tảng để tạo ra ứng dụng .NET Android, .NET iOS, .NET macOS và thư viện Windows UI 3 (WinUI 3). Tấc cả các framework trên đều có quyền truy cập vào .NET Base Class Librảy (BCL). Đối với Android, iOS và macOS, môi trường thực hiện bởi Mono, một triển khai của .NET Runtime. Trên Windows là .NET CoreCLR.
Mặc dù BCL cho phép ứng dụng trên nhiều nền tảng khác nhau chia sẻ dụng logic với nhau, nhưng về giao diện chúng có các model khác nhau để cho người dùng tự thiết kế riêng (.NET Android, .NET iOS, .NET macOS, or WinUI 3) nhưng sẽ khó khăn và đòi hỏi bạn am hiểu từng model của từng hệ điều hành khác nhau. Do đó, .NET MAUI cũng cung cấp một framework chung để tạo UI cho di động và máy tính

Xem hình trên, bạn có thể viết code tương tác với .NET MAUI (API 1) và .NETT MAUI sẽ trực tiếp dùng nền tảng gốc (APIs 3). Ngoài ra, bạn cũng có thể trực tiếp dùng (APIs 2) nếu cần.
.NET MAUI có tthể viết trên PC hoặc Mac và nó biên dịch ra ứng dụng gốc:
– Android sẽ được .NET MAUI biên dịch từ C# sang ngôn ngữ trung gian (IL) sau đó biên dịch ((JIT) thành các assembly gốc khi ứng dụng khởi động.
– iOS sẽ được .NET MAUI biên dịch AOT từ C# thành ARM assembly
– macOS sẽ sẽ được .NET MAUI dùng Mac Catalyst để built
– Ứng dụng Windows sẽ được .NET MAUI built bằng Windows UI 3
.NET MAUI sẽ cung cấp những gì ?
– Dùng để thiết kế các layout phức tạp
– Tạo nhiều loại trang với sự điều hướng phong phú, như ngăn kéo
– Hỗ trợ data-binding
– Khả năng tuỳ chỉnh nâng cao cách trình bày của các thành phần giao diện người dùng
– Các API đa nền tảng để truy cập đến các tính năng gốc của thiết bị như GPS, cảm biến, Pin và trạng thái mạng
– Hỗ trợ các thành phần đồ hoạ đa nền tảng, vẽ canvas hỗ trợ tạo shape và hình ảnh, các hoạt động kết hợp và các đối tượng đồ hoạ biến đổi
– Một project duy nhấtt để tạo ra các ứng dụng Android, iOS, macOS, và Windows
– .NET hot reload mà một tính năng cho phép cập nhật giao diện XAML và code C# khi ứng dụng đang chạy.
Với các thông tin trên hy vọng bạn có cái nhìn tổng quan về .NET MAUI và biết được những tính năng mà nó có thể làm để phục vụ được mục đính của bạn.
Nguồn : Learn.microsoft.com