C#(讀做 「See Sharp」)是一種簡單易用的新式編程語言,不只面向對象,還類型安全。 C# 源於 C 語言系列,可用 C# 構建在多種操做系統(平臺)上運行的軟件組件和應用程序。windows
由於本系列文章會普遍地使用 C# 代碼示例,因此咱們先來看看 C# 程序的樣子,還有它的不一樣部分表明什麼意思。安全
本篇,咱們從一個簡單程序開始,學習如何建立和運行一個 C# 程序。性能優化
「Hello World」 程序從來都用於介紹編程語言。 下面展現了此程序的 C# 代碼:app
using System; namespace HelloWorld { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } } }
寫好 C# 代碼後須要編譯和運行,目前有多個不一樣的 .NET 框架供選擇,這時要選擇使用哪一個 .NET 實現(或者說 .NET 框架)。 這些實現一般打包成一個軟件開發包(Software Development Kit,SDK),多個 .NET 框架的內容請參考這篇文章:sfsd框架
每種 .NET 框架的安裝過程都有所區別。建議訪問 https://www.microsoft.com/net/download
瞭解具體的下載和安裝指示。先選好 .NET 框架,再根據目標操做系統選擇要下載的包。編程語言
如不肯定要使用的 .NET 框架,就默認選擇具備跨平臺能力的 .NET Core。它能夠運行在 Linux、macOS 和 Microsoft Windows,因此優先使用 .NET Core。編輯器
有許多源代碼編輯工具可供選擇,包括最基本的 Windows 記事本、Mac/macOS TextEdit 和 Linux vi。 但建議選擇一個稍微簡單又容易掌握功能還強大的工具,至少應支持彩色標註。支持 C# 的任何代碼編輯器均可以。ide
若是尚未特別喜歡的,推薦開源編輯器 Visual Studio Code(https://code.visualstudio.com
)。 若是在 Windows 或 Mac 上工做,也可考慮 Microsoft Visual Studio 2017(或更高版本),詳情參考 https://www.visualstudio.com
。工具
.NET Core 命令行接口 (CLI) 工具是用於開發 .NET 應用程序的新型跨平臺工具鏈。如下是在 Windows 上建立、編譯和執行 HelloWorld 程序的示例:
要開始構建 .NET 應用程序,只需下載並安裝 .NET SDK(軟件開發工具包)。
安裝完成後,打開一個新的命令提示符並運行 dotnet
命令。若是該命令運行,打印出有關如何使用 dotnet 的信息,說明安裝成功了。
導航到桌面。
運行 dotnet new console -o myApp
命令
該 dotnet
命令爲建立了一個 console
類型的應用程序。-o
表示建立一個名爲 myApp 的文件夾,並把代碼文件放到目錄中。
myApp 文件夾中的 Program.cs
文件就是 C# 源代碼文件。默認狀況下,它有以下內容:
using System; namespace myApp { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } } }
運行 dotnet run
命令
到目前爲止,已經構建並運行了第一個 .NET 應用程序!
可使用任何文本編輯器(例如記事本)打開 Program.cs
文件,而後修改成以下的內容:
using System; namespace myApp { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); Console.WriteLine("The current time is " + DateTime.Now); } } }
保存 Program.cs
文件,而後再次運行 dotnet run
命令。
使用 Visual Studio 2017 生成 Hello World 應用程序:https://docs.microsoft.com/zh-cn/dotnet/core/tutorials/with-visual-studio
在 Visual Studio 2017 中調試 Hello World 應用程序:https://docs.microsoft.com/zh-cn/dotnet/core/tutorials/debugging-with-visual-studio?tabs=csharp
使用 Visual Studio 2019 生成 Hello World 應用程序:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/inside-a-program/hello-world-your-first-program?tabs=windows
不管 Dotnet CLI 仍是 Visual Studio 都會自動建立幾個文件。第一個是名爲 Program.cs
的 C# 文件。雖然可選擇任何名稱,但通常都用 Program
這一名稱做爲控制檯程序起點。.cs
是全部 C# 文件的標準擴展名,也是編譯器默認要編譯成最終程序的擴展名。
雖然並不是必定須要,但一般都會爲 C# 項目生成一個項目文件(.csproj
文件)。 項目文件的內容隨不一樣應用程序類型和 .NET 框架而變。但至少會指出哪些文件要包含到編譯中,要生成什麼應用程序類型(控制檯,Web,移動,測試項目等等),支持什麼 .NET 框架,調試或啓動應用程序須要什麼設置,以及代碼的其餘依賴項(稱爲「庫」)。
下面的代碼列出了一個簡單的 .NET Core 控制檯應用項目文件。
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>netcoreapp3.0</TargetFramework> </PropertyGroup> </Project>
dotnet build
命令生成名爲 myApp.dll
的程序集(assembly)。擴展名 .dll
表明「動態連接庫」(Dynamic Link Library, DLL)。 對於 .NET Core,全部程序集都使用 .dll
擴展名。在本例中,.NET Core 應用程序的編譯輸出默認放到子目錄 ./bin/Debug/netcoreapp3.0/
。之因此使用 Debug 這個名稱,是由於默認配置就是 debug。該配置輸出爲調試而不是性能優化。
編譯好的輸出自己不能執行(myApp.dll
不能雙擊運行)。相反,需用 CLI 來寄宿(host)代碼。 對於 .NET Core 應用程序, 這要求 Dotnet.exe 進程做爲應用程序的寄宿進程。
.NET Core 3.x 以後的應用使用可執行文件進行構建(生成 .exe
文件),在本例中,./bin/Debug/netcoreapp3.0/
目錄下的 myApp.exe
能夠雙擊運行。
本篇簡單的介紹瞭如何建立一個基本的 C# 控制檯應用程序程序。讀完本篇,應該可以掌握使用 Visual Studio 建立並調試 C# 控制檯應用程序。
原文連接:https://www.vinanysoft.com/c-sharp-basics/introducing/start-with-hello-world/