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