微軟喜歡 linux,但不會投資桌面應用程序
人們很容易將微軟和開源 Linux 操作系統的歷史看作是兩個死敵謹慎和解的故事。 微軟——這家曾經將 Linux 稱為癌癥的公司——在過去十年的大部分時間里都在推動開源生態系統的發展。 他們歡迎 Linux 進入 VS Code 等編程工具、Azure 等云環境以及 SQL Server 等服務器產品。 他們甚至通過出色的 windows Linux 子系統 (WSL) 將 Linux 融合到 Windows 操作系統中,這使您可以像打開“開始”菜單一樣輕松地運行 bash 腳本。
微軟以對其以前的優先事項失去興趣而聞名。 但是當談到 Linux 時,人們的熱情絲毫沒有減弱的跡象。 最近,微軟演示了對一項名為 WSLg 的備受期待的技術的支持,該技術讓 Windows 計算機運行圖形化 Linux 應用程序,并配備基于硬件的 3D 加速。徹底瘋狂(典韋語)!
在Windows上,使用 Linux 版本的 Audacity 錄制音頻
但是天堂里也有問題。 是的,Microsoft 已經認識到基于服務器的 Linux 軟件的吸引力和重要性。 是的,Microsoft 繼續將 Linux 功能添加到其自己的閉源操作系統中。 但微軟還沒有完全接受 Linux 作為桌面操作系統——至少不是一個值得他們尊重的操作系統。 沒有什么比快速發展的 .NET MAUI 項目更清楚這一點了。
如果您還沒有玩過 MAUI(Multi-platform App UI 的縮寫),它是一個用于使用 .NET 7 和 C# 構建跨平臺本機應用程序的工具包。 從技術上講,MAUI 是 Xamarin.Forms 產品的演變,現在更好地集成到 Visual Studio 中,并擴展為優雅地處理桌面應用程序。
當您使用 MAUI 構建應用程序時,您使用的是單個項目。 但您可以針對多個平臺,包括移動設備(Android、IOS)和桌面設備(Windows UWP、macOS)。 這是它的樣子:
一個MAUI可以部署到多個平臺
MAUI 是一種統一一切的解決方案,適用于想要超越基于瀏覽器的應用程序的開發人員。 但 MAUI 也有一個明顯的遺漏:沒有針對桌面 Linux 應用程序的內置支持。
現在,重要的是要社區正在努力為 MAUI 創建 Linux 途徑。 (有類似的項目,將 Xamarin.Forms和 WPF 引入 macOS ,兩者都沒有微軟的官方認可或長期支持承諾。)但潛在的問題是顯而易見的。 如果操作系統支持不是產品的一部分,那么它的未來堪憂。 它是否會保持最新狀態、修復錯誤和蓬勃發展的社區支持? 解決方案實施的成熟度? 您是否應該將其帶入需要持續支持和對公眾開放的企業環境中?
作為一個實際的商業決策,不支持 Linux 似乎是明智的。 從數字的角度來看,Linux 用戶很少,開發人員資源也很有限——即使在微軟也是如此。
但是,如果您試圖在跨平臺 UI 中建立一個新品牌,則存在可信度問題。 如果你不能為三大桌面操作系統提供一流的支持(比如 VS Code 提供),那么可信度就會被削弱。 如果你打算與其他跨平臺 UI 框架競爭,比如谷歌的 Flutter 或 React Native,它們沒有相同的盲點,那么 Linux 支持就更為重要。 甚至其他用于 .NET 的第三方 UI 平臺,如 Uno 和 Avalonia,也設法填補了 Linux 的空白。
就個人而言,我愿意相信微軟。 但我也理解為什么一些 Linux 開發人員仍然對這家公司抱有深深的懷疑。 將 Linux 排除在他們最新的開發解決方案之外,即使他們繼續將 Linux 支持構建到 Windows 中,也會引發一個問題。 這是單行道嗎? 將 Linux 置于 Windows 中是否比在 Linux 上運行 Microsoft 技術更受歡迎?
這也有可能助長這樣一種看法,即在某個深奧而隱秘的角落,微軟仍然堅持其臭名昭著的舊戰略:快來微軟,這里一切都更好。 對于一家取得如此成就的公司——從閉源堡壘轉變為世界頂級開源貢獻者——很難不感到失望。