MAUI来了
? ? ?各位很久沒有和大家說端的開發了,技術發展特別快,我不知道還有多少國內的開發人員還堅守用Xamarin,但是.NET的迭代變化還是讓國內.NET社區熱鬧起來了。去年雖然疫情,但微軟還是在Build上發布了MAUI。微軟這次把MAUI完全整合到了.NET 6里面,讓跨平臺開發在.NET下真真正正成為原生。比較遺憾的反而是名字,不過如果你看看MAUI的全名Multi-platform App UI就能理解微軟的用意了。但很多人會問,這個新的演變,有多少變化,下面我解答一下,讓大家有一個初步概念,希望大家也可以擁抱下MAUI。
? ? ?
?
一 什么是MAUI
從大的概念來說,是一套跨平臺,原生的客戶端解決方案。這和Xamarin Forms是一致的,但改進了Xamarin Forms幾個問題?
1. 當我們創建Xamarin時,除了創建共享的邏輯和頁面外,不同平臺是分開項目的,而在MAUI是整合到一個項目,以文件夾分開對應的平臺。在開發上有人喜歡舊有的方式,但我個人認為這更有利于客戶端界面的開發。畢竟都是做UI的事情。
? ? ? ? ? ? ?
? ??
2.對于控件的繪制上,我覺得微軟在參考了flutter后,重新優化了控件
3.一個重新構建的頁面結構以往基于ContentPage,現在新增IPage對頁面進行繪制
注:更多變化大家可以看看https://www.youtube.com/watch?v=qbHO8J3bId0?
二 如何創建MAUI項目
MAUI現在也可以通過命令行做創建,因為現在處于preview 3的狀態,所以如果你要通過命令行創建MAUI,除了要安裝.NET 6 Preview 3 外,還需要安裝.NET MAUI Check
dotnet tool install -g redth.net.maui.check
.NET MAUI Check 現在有幾個作用
1 可以檢查MAUI對相關平臺SDK是否齊全通過檢查執行以下命令就可以完成相關檢查
maui-check
?
2 提供MAUI項目的創建模版
當所有支持條件都檢查完后,你就可以通過命令行去完成MAUI項目的創建
dotnet new maui -n HelloMaui
?
3 你可以通過MAUI Check去做一些定制工作,例如Nuget設定或者相關SDK環境設定,還有你可以獲取最新的開發環境支持,因為MAUI還在preview階段,所以相關依賴的庫需要重新定向Nuget
maui-check config --nuget-sources
關于.NET MAUI Check的更多實用你可以參考https://github.com/redth/dotnet-maui-check
三 運行與調試
官方去年已經說了MAUI可以和Visual Studio Code結合使用,但現在相關插件功能還在路上,所以暫時不能完整使用,你現在可以通過腳本進行調用
dotnet build -t:Run -f net6.0-android
dotnet build HelloMaui -t:Run -f net6.0-ios
dotnet build HelloMaui -t:Run -f net6.0-maccatalyst
?
四 小結
MAUI在11月會和.NET 6一起正式發布,現階段還是很初期,算是一個非常新的開始,當然你說是不是舊酒新瓶呢?但作為一個.NET 6的主推功能推出,也是非常重磅。這里大家會和同類型的產品Flutter比較,就看你的使用場景和團隊的需求了,其實兩者差不多。隨技術發展,國內的技術生態,MAUI要怎么走還很難說,需要大家共同努力。不過很認真說,這個主動權還是微軟。
————————————————
版權聲明:本文為CSDN博主「kinfey」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/kinfey/article/details/115764722
總結
- 上一篇: AgileConfig - 轻量级配置中
- 下一篇: 温故知新,DotNet Core SDK