如何在Linux/Windows/MacOS上使用.NET進行開發
了解 .NET 開發平臺啟動和運行的基礎知識。
.NET 框架由 Microsoft 于 2000 年發布。該平臺的開源實現 Mono 在 21 世紀初成為了爭議的焦點,因為微軟擁有 .NET 技術的多項專利,并且可能使用這些專利來終止 Mono 項目。幸運的是,在 2014 年,微軟宣布 .NET 開發平臺從此成為 MIT 許可下的開源平臺,并在 2016 年收購了開發 Mono 的 Xamarin 公司。
.NET 和 Mono 已經同時可用于 C#、F#、GTK+、Visual Basic、Vala 等的跨平臺編程環境。使用 .NET 和 Mono 創建的程序已經應用于 Linux、BSD、Windows、MacOS、Android,甚至一些游戲機。你可以使用 .NET 或 Mono 來開發 .NET 應用。這兩個都是開源的,并且都有活躍和充滿活力的社區。本文重點介紹微軟的 .NET 環境。
如何安裝 .NET
.NET 下載被分為多個包:一個僅包含 .NET 運行時,另一個 .NET SDK 包含了 .NET Core 和運行時。根據架構和操作系統版本,這些包可能有多個版本。要開始使用 .NET 進行開發,你必須安裝該 SDK。它為你提供了 dotnet 終端或 PowerShell 命令,你可以使用它們來創建和生成項目。
Linux
要在 Linux 上安裝 .NET,首先將微軟 Linux 軟件倉庫添加到你的計算機。
在 Fedora 上:
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ sudo wget -q -O /etc/yum.repos.d/microsoft-prod.repo https://packages.microsoft.com/config/fedora/27/prod.repo
在 Ubuntu 上:
$ wget -q https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
接下來,使用包管理器安裝 SDK,將 <X.Y>
替換為當前版本的 .NET 版本:
在 Fedora 上:
$ sudo dnf install dotnet-sdk-<X.Y>
在 Ubuntu 上:
$ sudo apt install apt-transport-https
$ sudo apt update
$ sudo apt install dotnet-sdk-<X.Y>
下載并安裝所有包后,打開終端并輸入下面命令確認安裝:
$ dotnet --version
X.Y.Z
Windows
如果你使用的是微軟 Windows,那么你可能已經安裝了 .NET 運行時。但是,要開發 .NET 應用,你還必須安裝 .NET Core SDK。
首先,下載安裝程序。請認準下載 .NET Core 進行跨平臺開發(.NET Framework 僅適用于 Windows)。下載 .exe 文件后,雙擊該文件啟動安裝向導,然后單擊兩下進行安裝:接受許可證并允許安裝繼續。
Installing dotnet on Windows
然后,從左下角的“應用程序”菜單中打開 PowerShell。在 PowerShell 中,輸入測試命令:
PS C:\Users\osdc> dotnet
如果你看到有關 dotnet 安裝的信息,那么說明 .NET 已正確安裝。
MacOS
如果你使用的是 Apple Mac,請下載 .pkg 形式的 Mac 安裝程序。下載并雙擊該 .pkg 文件,然后單擊安裝程序。你可能需要授予安裝程序權限,因為該軟件包并非來自 App Store。
下載并安裝所有軟件包后,請打開終端并輸入以下命令來確認安裝:
$ dotnet --version
X.Y.Z
Hello .NET
dotnet
命令提供了一個用 .NET 編寫的 “hello world” 示例程序。或者,更準確地說,該命令提供了示例應用。
首先,使用 dotnet
命令以及 new
和 console
參數創建一個控制臺應用的項目目錄及所需的代碼基礎結構。使用 -o
選項指定項目名稱:
$ dotnet new console -o hellodotnet
這將在當前目錄中創建一個名為 hellodotnet
的目錄。進入你的項目目錄并看一下:
$ cd hellodotnet
$ dir
hellodotnet.csproj obj Program.cs
Program.cs
是一個空的 C# 文件,它包含了一個簡單的 Hello World 程序。在文本編輯器中打開查看它。微軟的 Visual Studio Code 是一個使用 dotnet 編寫的跨平臺的開源應用,雖然它不是一個糟糕的文本編輯器,但它會收集用戶的大量數據(在它的二進制發行版的許可證中授予了自己權限)。如果要嘗試使用 Visual Studio Code,請考慮使用 VSCodium,它是使用 Visual Studio Code 的 MIT 許可的源碼構建的版本,而沒有遠程收集(請閱讀此文檔來禁止此構建中的其他形式追蹤)。或者,只需使用現有的你最喜歡的文本編輯器或 IDE。
新控制臺應用中的樣板代碼為:
using System;
namespace hellodotnet
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
要運行該程序,請使用 dotnet run
命令:
$ dotnet run
Hello World!
這是 .NET 和 dotnet
命令的基本工作流程。這里有完整的 .NET C# 指南,并且都是與 .NET 相關的內容。關于 .NET 實戰示例,請關注 Alex Bunardzic 在 opensource.com 中的變異測試文章。