使用 Try .NET 建置第一個應用程式
在本課程模組的開端,我們假設您已使用 C# 來撰寫 "Hello World" 應用程式。 如果您還沒有這麼做,建議您複習此學習路徑的第一個課程模組:撰寫您的第一個 C# 程式碼。
為了簡單起見,我們會重寫 "Hello World" 應用程式,但是這次我們會採用 .NET 的觀點並查看幕後發生的情況。
使用 C# 建置簡單的應用程式
稍早,您已了解 Try .NET 提供了一種簡單的方式來實驗 C# 與 .NET。 您可以使用 Try .Net,而不需在本機電腦上安裝任何軟體。
注意
在本課程模組中,您會使用瀏覽器內建的 Try .NET 版本。 如果您想要在完成此練習之後實驗該應用程式,請移至 https://try.dot.net
。 Try .NET 是嘗試小型程式碼範例的絕佳方式,無需在本機電腦上安裝任何項目。
步驟 1 - 撰寫程式碼
在此網頁右側的 .NET 編輯器中,輸入下列程式碼範例。 或者,複製程式碼範例,然後將其貼到 .NET 編輯器中。
Console.WriteLine("Hello world!");
如同您在先決條件課程模組中所了解的,"Hello World" 是一個簡單的標準程式碼範例,開發人員都會撰寫此範例來了解新程式設計語言的基本語法。 您可以從此簡單範例中了解許多有關 C# 語法的資訊。 現在,我們會使用此範例,特別深入了解 .NET 的詳細資訊。
步驟 2 - 執行程式碼
選取 .NET 編輯器中的綠色 [執行] 按鈕。 如果輸入的 C# 程式碼正確,「Hello World!」 字組會出現在 [輸出] 窗格中。
重要
如果您在執行此程式碼時看到任何錯誤,請複製程式碼,然後貼入 .NET 編輯器中,並再次嘗試執行程式碼。
您撰寫的程式碼會發生什麼事?
Try .NET 的瀏覽器版本會隱藏一些您在使用 Try .NET、Visual Studio 2022 或 Visual Studio Code 建置完整應用程式時所看到的程式碼。
當您包含隱藏的程式碼時,範例看起來如下:
using System;
public class Program
{
public static void Main()
{
Console.WriteLine("Hello world!");
}
}
瀏覽器內部的 Try .NET 環境會使用您先前所了解的相同步驟。 唯一的差異在於隱藏了一些程式碼以簡化體驗。
請聚焦於展開的程式碼檢視上,您可以看見一連串的大括號 { }
。 C# 會使用一對大括號來定義「程式碼區塊」。 不同種類的程式碼區塊可用於不同目的。
包括大括號組合的程式碼 public static void Main()
會定義稱為方法的程式碼區塊類型。 方法包含一組程式碼,其適用於軟體系統中的單一用途或責任。
在此案例中,方法包含單一行程式碼,且其用途是顯示訊息。 較大型程式則可以會包含數以百計,甚至數以千計的方法。
方法會在另一個稱為「類別」的程式碼區塊中加以組織。 類別可包含一或多個方法。 類別中的所有方法在系統中都會具備相關用途。 上述程式碼中的類別會命名為 Program
。
在您插入的程式碼行中,Console.WriteLine()
「正在呼叫」或執行 WriteLine()
方法。 WriteLine()
方法包含於 Console
類別中。
此程式碼在哪裡? 其位於基底類別庫中。 實際上,其完整名稱是 System.Console.WriteLine()
。 在上述程式碼範例中,您看到的第一行是:
using System;
您對 Console.WriteLine()
的呼叫中省略了 System
這個字。 但第一行程式碼 using System;
會告知 C# 編譯器,若在程式碼中找不到方法定義,則查看基底類別庫。
注意
別擔心方法、類別、System 與 using 之類的 C# 特定術語。 您會在稍後了解這些項目。 我們的目前重點在編譯和執行您程式碼的程序。
在將您的程式碼插入到 Main() 方法之後,會發生什麼事?
此練習最重要的部分是,在將您撰寫的程式碼插入到 Main()
方法後,會發生什麼事。 請記住,以下程序會代表您在伺服器上執行。
用來編譯新程式碼的命令會叫用 C# 編譯器。
C# 編譯器會確保您的程式碼可以編譯,而且不會出現語法錯誤。 如果無法編譯程式碼,編譯器就會停止,並將錯誤訊息傳送回 [輸出] 窗格。
如果 C# 編譯器成功,則 .NET 執行階段會開啟新編譯的 .NET 組件。 根據預設,其會在名為
Program
的類別中尋找名為Main()
的方法,以開始執行指令。.NET 執行階段會依指示逐一評估每行程式碼。 其會執行指示,然後移至下一行程式碼。
在此情況下,當列印「Hello world!」文字的指令完成時,執行中的路徑會繼續下一行,但找不到任何內容。 路徑結束,而 .NET 執行階段會從記憶體中移除程式。 同時,將
WriteLine()
指示的輸出傳送回您的網頁瀏覽器。
這個事件順序,以及程式設計語言、編譯器與執行階段之間責任的基本劃分,均為您在開始使用時所了解到的最重要概念。