IRONSOFTWAREHOME

C#在Linux上的系列介紹

在Linux上的C#: 系列介紹

Tim Corey

14分 29秒

對於大多數C#開發者來說,Windows一直是他們唯一使用的操作系統。 工具、IDE和部署目標都圍繞著一個平台。 這樣是可行的,直到因為近期操作系統變更帶來的隱私問題、想將舊硬體重新利用,或者只是因為知道多個環境會帶來專業優勢時,不再可行。

在他的影片《在Linux上的C#: 系列介紹》中,Tim Corey開啟了一個在Linux上完全開發.NET應用程式的多部系列。 這第一集影片介紹在編寫任何程式碼之前的情況:選擇哪個Linux發行版、哪些編輯器適合C#開發、您可以和無法構建的專案型別,以及當工作流程不再像Windows時的預期。 如果您對在傳統環境之外運行.NET感到好奇,這就是您的路線圖。

為什麼選擇Linux? 選擇更多選項的原因

[0:00 - 1:17] Tim以坦率的觀察開場:被限制在一個單一的平台上會限制您的靈活性。 之前關於微軟對Windows的AI相關變更的影片引發了關於替代方案的討論,這系列影片正是從那些討論中誕生的。 目標不是放棄Windows,而是為您的技能集增加一個可行的第二環境。

擁有這樣的廣度具有真正的專業價值。 如果新的工作要求是在Mac或Linux上工作,或者如果部署目標是在Linux伺服器上運行,已經了解工作流程的開發者將擁有明顯的優勢。 Tim將此系列定位為從不同角度接觸.NET的方式,而不是平台戰爭。

選擇Linux Mint

[1:28 - 2:42] 一些令新手驚訝的事是,"Linux"並不是一個單一的操作系統。 它是一個內核,支撐著數百個不同的發行版,每個都有其自己的桌面環境、包管理器預設設置和設計理念。 Tim承認眾多選擇可能令人不知所措,然後簡化了本系列的決定:Linux Mint。

Mint在穩定性和熟悉程度之間找到了平衡。 它的桌面佈局與Windows使用者已經熟知的相似,具有工作列、等效的開始功能表和一個行為可預測的文件管理器。 這種視覺上的相似性使得過渡更加順利,而不假裝這兩個系統是相同的。 其他發行版如 Pop!_OS 也是不錯的選擇,但對於肌肉記憶建立在Windows之上的開發者來說,Mint提供了最容易接觸的起點。

針對.NET開發的IDE選擇

[2:42 - 3:57] 由於Visual Studio是一款僅適用於Windows的應用程式,Linux開發者需要一個不同的編輯器。 Tim強調了兩個主要的路徑:VS Code搭配C# Dev Kit擴展和JetBrains Rider。

最近幾個版本中,VS Code與C# Dev Kit搭配的表現進步顯著,儘管Tim指出仍存在一些不太細緻的地方。 授權遵循與Visual Studio相同的模式:對個人開發者和小團隊免費,對於較大的組織則需付費。 JetBrains Rider現在為個人專案提供免費社群版,給開發者提供了第二個不需要前期成本的選擇。該系列將傾向於VS Code,但也會涵蓋雙方,因為每個工具都有依任務而異的優勢。

機器規格:您實際需要什麼

[4:00 - 6:14] Linux最實用的賣點之一是它對硬體要求極低。 Tim分享了兩個例子來說明範圍。 首先,他描述了在Raspberry Pi鍵盤電腦上運行VS Code和C# Dev Kit的情況,一台擁有大約400 MHz處理能力和雙核CPU的裝置。 他在其上構建並運行了一個Blazor應用程式。 儘管體驗有些遲緩,但它確實運作了。

第二個例子對於大多數開發者來說則更具有關聯性。 一台在Windows 10下變得不可用的舊筆記型電腦(點擊超時,應用程式拒絕載入)在重新安裝後,運行Linux Mint沒有問題。 那些幾乎渲染不出Windows桌面的相同硬體變成了一台功能齊備的開發機。Tim明確地指出,較好規格的硬體仍然會提供更好的體驗,但在Linux上進行C#開發的最低要求遠低於在Windows上的要求。

您可以和無法構建的專案型別

[6:17 - 8:23] 不是所有的.NET專案型別都能在Windows以外的地方運行,提前了解這些界限可以避免日後的挫折。 WinForms和WPF都依賴於嵌入操作系統中的特定於Windows的程式庫。 UWP具有相同的限制。 這些都無法在Linux上編譯或運行。

MAUI增加了一個值得注意的細微差別。 儘管它面向多個平台(Windows、macOS、iOS、Android),但Linux並不在其中。 這一區別很重要,因為開發者有時會假設"跨平台"意味著"無處不在",而實際上MAUI的範圍不包括Linux和網頁。

可運行的應用範圍很廣。 控制台應用程式,它構成了學習C#的基礎,無需修改即可運行。 服務應用程式(在Linux術語中稱為守護程式)完全支持。 整個ASP.NET Core網頁棧,包括API,Blazor應用程式,gRPC服務和工作者服務,都在Linux上完全運行。 對於需要跨操作系統運行的桌面應用程式,Uno Platform作為本系列未來的主題,允許您從Linux構建並部署到Windows和macOS。

本系列不會做什麼

[8:37 - 11:52] Tim早早設立了三個期望。 首先,本系列並不反對微軟。 GitHub、Azure、Edge、VS Code和.NET本身都是微軟的產品,且在系列中會多次提及。 重點是在自己的條件下選擇採用哪些工具,而不是被強加於您。

其次,這些集不會把Linux定位為唯一正確的選擇。對於許多開發者和工作流程來說,Windows仍然是正確的環境。 Linux擴展了選項; 它並不替代Windows處理良好的每一種情況。 其價值在於理解這兩個平台,以便您能選擇適合某個特定情境的平台。

第三點,也許對於正要轉換的開發者而言最重要:不要期望Linux會像Windows一樣運作。 安裝軟硬體需要更多的命令行互動。 包管理採取基本不同的模型。 某些在Windows上自動的工作流程,在Linux上需要明確的步驟。 系列會隨著這些差異出現時逐一介紹,解釋為什麼它們存在以及如何處理它們。

期望差異而非缺陷

[11:52 - 13:34] 在切換平台時,一個常見的陷阱是對您已知的事物進行比較。 Tim直接說明了這一點:離開Windows意味著要接受某些任務會看起來和感覺上都不熟悉。 窗口管理、軟體安裝和系統配置在Linux上都有自己的規範。

其中的一些模式確實更優越。 例如,Linux的包管理器模型通過單一系統讓您的整個軟體棧保持更新,而不是依賴每個應用程式來管理其自己的更新程式。 其他差異則僅需適應。 Tim將其比作從Windows切換到Mac,他在Mac上安裝第三方工具,以獲得他喜歡的窗口對齊行為。 在Linux上發生了同樣的情況:您隨著時間的推移適應環境,而不是期望它模仿您留下的環境。

總結:系列的路線圖

[13:34 - 14:10] Tim結尾時概述了接下來的內容。 系列一開始是在USB驅動器上安裝Linux Mint,這樣您可以在不改動現有Windows安裝的情況下,測試整個體驗。 從那裡開始,後續的集數會涵蓋永久安裝、設置開發工具和構建實際應用程式。 支線影片會在這一路上解決Linux特定的配置任務。

結論

[14:10 - 14:29] 這次介紹的重點很簡單明瞭:Linux是一個可行的、能夠進行C#和.NET開發的平台,但潛入其中之前,您應了解一些界限。 硬體要求不高,工具已經成熟,對現代開發(網路、API、服務、控制台)最重要的專案型別都可以毫無妥協地運行。

對於那些一直在Windows上工作開發者來說,此系列提供了一個結構化的途徑來拓寬您的範圍。 從一個隨身驅動器開始,意味著沒有什麼可失去的,但可以獲得有意義的技能。

範例提示:在承諾進行完整安裝之前,從您的主機上用可攜USB隨身碟啟動Linux Mint。這樣,您可以在不更改現有設置的情況下,對桌面、終端和一般工作流程有一個感受。如果體驗很合拍,您可以在知道該期待什麼的情況下,轉到永久安裝。

觀看他YouTube頻道上的完整影片,並獲得更多關於在Linux上開發C#的洞察。

Earn More by Sharing What You Love

Do you create content for developers working with .NET, C#, Java, Python, or Node.js? Turn your expertise into extra income!

Let's Stay in Touch!

Join our newsletter, you’ll get exclusive access on article updates. We value your privacy

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
獲取您的無義務諮詢
填寫以下表格或發送電子郵件至sales@ironsoftware.com
您的詳細資訊將始終保密。
被全球數百萬工程師信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立