微軟推出了最新.NET 6第一預覽版,這個版本將會是補全.NET 5.0,進行儲存庫整合,以及.NET統一化工作的最終部分,微軟提到,他們對.NET的所有部分都進行了大幅度的改進,包括雲端、桌面和行動應用程式。

.NET 6的重點還是在其統一化,和擴展支援更多的平臺,微軟增加開發者可以使用.NET進行的工作,透過整合Xamarin將Android、iOS和macOS功能帶到.NET 6中,並且利用Blazor擴充支援新型混合客戶端應用程式,這是一種結合網頁和原生UI的應用程式,可以用於桌面和行動用例。

微軟要藉由統一化.NET讓各平臺開發人員都能受益,桌面應用程式開發人員有機會觸及新的使用者;行動應用程式開發者在打造iOS和Android平臺應用程式時,也可以使用主要的.NET工具和API;而網頁和雲端開發人員可以更簡單地將應用程式移植到行動平臺,並且在之間共享程式碼。

這個統一的過程從.NET 5開始,微軟選擇Blazor WebAssembly作為第一個統一平臺,這是一個以Mono Runtime為基礎,使用.NET類別函式庫和.NET SDK工具的平臺,微軟提到,就像是整合Xamarin一樣,他們會在iOS和Android使用相同的模型,透過統一的平臺,使得新增的API和更新,都可以在同一天供所有開發人員使用,並適用於所有應用程式。

而且用戶不用擔心因為支援行動工作負載,.NET SDK就會變得龐大,因為行動工作負載將會是可選的,而事實上,現有的工作負載都會變成可選,因此.NET SDK反而會變小,這項改進將會在.NET 6進行一部分,並在.NET 7中完成。

.NET 6統一化的工作,還包括.NET多平臺應用程式UI,這是一個以Xamarin為基礎的現代化UI工具,微軟提到,這將可以讓開發者在各種平臺上,包括行動和桌面應用程式中,共享更多的程式碼,並且提供一致的應用程式體驗,開發者將可以用來開發Android、iOS、macOS和Windows應用程式。

微軟透過擴展和整合Xamarin.Forms工具包,在.NET 6中支援多平臺,微軟表示,將Xamarin.Essentials函式庫整合到.NET多平臺應用程式UI中,不只供開發人員使用跨平臺控制元件,還可以輕鬆地使用像是裝置的感測器,或是相片和聯絡人等一般功能。微軟在.NET 6第一個預覽版,先在.NET多平臺應用程式UI新增Android和iOS兩作業系統的支援。

另外,微軟也持續改進.NET對Arm64裝置的支援,在.NET 5.0中,微軟已經大幅改進了應用程式在Arm64上執行的效能,而.NET 6第一個預覽版,以.NET 5所提供的Windows Arm64功能為基礎,在Windows上新增了對Windows Forms和WPF(Windows Presentation Framework)的支援,微軟提到,之前雖然有承諾會將Windows桌面應用程式功能,向後移植到.NET 5,但是目前沒有時間表,預計會在2021年上半年完成。

在Mac上,.NET 6以原生和模擬的方式支援了Apple Silicon,但微軟提到,與其他.NET所支援的Arm64晶片相比,新的Apple晶片有更嚴格的要求,Apple為Apple Silicon發布移植JIT編譯器以及相關的API,因此所有相依於JIT編譯器的應用程式Runtime都需要變更,這些改變已經在.NET 6第一個預覽版中完成。

但是另一個新要求,是對要透過Mac應用程式商店發布應用程式的通用二進位檔要求,微軟提到,因為目前.NET不支援透過商店發布應用程式,而且他們也不認為.NET開發人員需要這項功能,因此在這個版本中,他們暫時不會提供這項支援,但會在.NET 7時重新評估這項需求。

.NET 5的支援時間只會到.NET 6發布後的3個月,而.NET 6將會是一個長期支援版本,預計會在2021年11月發布,並提供3年支援。


熱門新聞

Advertisement