在此 Visual Studio 程式代碼編輯器簡介中,您會將程式代碼新增至檔案,並探索 Visual Studio 如何協助撰寫、瀏覽及瞭解程式代碼變得更容易。
Tip
如果您沒有 Visual Studio,請移至 Visual Studio 下載,然後免費安裝它。
如果您尚未安裝 Visual Studio,請移至 Visual Studio 下載 頁面免費安裝。
本文假設您已經熟悉程式設計語言。 如果您不是,建議您先查看其中一個程序設計快速入門,例如使用 Python 或 C# 建立 Web 應用程式,或使用 Visual Basic 或 C++ 建立控制台應用程式。
Prerequisites
- 已設定 C# 開發設定的 Visual Studio。 若要設定設定,請參閱 選取環境設定。
建立新的程式代碼檔案
建立新的檔案,並在其中新增一些程序代碼。
開啟 Visual Studio。 按 Esc 鍵,或在開始視窗上選擇 不使用程式碼繼續 以開啟開發環境。
從功能表欄的 [ 檔案] 選單中,選取 [ 新增>檔案]。
在 [ 新增檔案 ] 對話框的 [ 一般 ] 類別下,選取 [Visual C# 類別],然後選取 [ 開啟]。
新的檔案會在編輯器中開啟,其中包含 C# 類別的基本架構。 (請注意,我們不需要建立完整的 Visual Studio 專案,即可取得程式碼編輯器所提供的一些優點;您只需要程式代碼檔案!
開啟 Visual Studio。 選取 Esc 鍵,或選取 [開始] 視窗上的 [ 繼續但不使用程式代碼 ],以開啟開發環境。
從功能表欄的 [ 檔案 ] 選單中,選取 [ 新增>檔案],或選取 Ctrl+N 鍵。
在 [ 新增檔案] 對話框的 [ 一般 ] 類別底下,選取 [C# 類別],然後選取 [ 開啟]。
新的檔案會以基本 C# 類別結構在編輯器中開啟。
使用 GitHub Copilot
GitHub Copilot 可作為 AI 助理程式設計師,提供自動完成風格的程式碼補全和具內容感知的多行程式碼建議,讓你在編輯器中即時撰寫程式碼時使用。 GitHub Copilot 會將自然語言提示轉換成編碼建議,包括批注和方法名稱。 您可以直接在編輯器中檢視並納入 GitHub Copilot 的建議。
讓我們使用 Copilot 來產生程式代碼建議:
將游標放在檔案的最後右大括弧 } 正下方。
輸入自然語言批註:
// Add a method to add two numbers和 Enter。GitHub Copilot 會為您產生程式代碼建議。 建議的實作會以灰色文字顯示。
若要接受建議,請選取 Tab鍵。
讓我們使用 Copilot Chat 將一個程式代碼相關的問題作為提示提交:
選取 IDE 右上角的 GitHub Copilot 徽章。
從下拉式清單中選取 開啟聊天視窗。
在聊天視窗中輸入下列提示:
Generate sample code for a simple C# method to add two numbers.Copilot Chat 會產生範例程式代碼,以回應您的提示。
GitHub Copilot 是由 AI 驅動的,因此可能會有意外和錯誤的情況發生。 如需詳細資訊,請參閱 GitHub Copilot 常見問題。
使用程式碼片段
Visual Studio 提供實用的代碼段,可讓您用來快速產生常用的程式代碼區塊。 代碼段適用於數種程式設計語言,包括 C#、Visual Basic 和 C++。
現在,將 C# void Main 代碼段新增至您的檔案。
將游標放在檔案中最後一個右大括弧 } 上方,然後輸入字元
svm。 (svm代表static void Main, Main() 方法是 C# 應用程式的進入點。彈出視窗隨即出現,其中包含
svm代碼段的相關信息。
按 Tab 鍵 兩次以插入代碼段。
您會看到
static void Main()方法簽章已新增至檔案。
可用的代碼段會因不同的程式設計語言而有所不同。 您可以選擇 [編輯]>IntelliSense>[插入代碼段],然後選擇語言的資料夾,來查看語言的可用代碼段。 針對 C#,清單看起來會像這樣:
將游標放在檔案中最後一個右大括弧
}上方,然後輸入字元svm。彈出視窗隨即出現,其中包含
svm代碼段的相關信息。
選取 Tab 鍵兩次以插入代碼段。
您會看到
static void Main()方法簽章已新增至檔案。 Main() 方法是 C# 應用程式的進入點。
可用的代碼段會因程式設計語言而異。 若要檢視語言可用的代碼段,請移至 [編輯>IntelliSense>插入代碼段 ],或選取 Ctrl+K、 Ctrl+X 鍵,然後選取程式設計語言的資料夾。 針對 C#,代碼段清單看起來像這樣:
此清單包含建立 類別的代碼片段、建構函式的代碼片段、用於 的 迴圈、if 語句或 switch 語句等。
註解掉程式碼
工具列是 Visual Studio 功能表欄底下的按鈕列,可協助您在程式代碼時更具生產力。 例如,您可以切換 IntelliSense 完成模式(IntelliSense 是一種程式代碼輔助程式,可顯示相符方法的清單,以及其他事項)、增加或減少行縮排,或批注您不想編譯的程式代碼。 在本節中,我們將批注化一些程序代碼。
將下列程式代碼貼到
Main()方法主體中。// _words is a string array that we'll sort alphabetically string[] _words = { "the", "quick", "brown", "fox", "jumps" }; string[] morewords = { "over", "the", "lazy", "dog" }; IEnumerable<string> query = from word in _words orderby word.Length select word;我們不會使用
morewords變數,但稍後可能會使用它,因此我們不想完全刪除它。 相反地,讓我們把這些行註釋掉。 選取morewords的整個定義到結尾的分號,然後選擇工具列上的 [註解選取的行] 按鈕。 如果您想要使用鍵盤,請按 ctrl+KCtrl+C。
C# 批註字元
//會新增至每個選取行的開頭,以批注化程序代碼。
[文本編輯器] 工具列,Visual Studio 功能表欄底下的按鈕列,可協助您在程序代碼時更具生產力。 例如,您可以切換 IntelliSense 完成模式、增加或減少行縮排,或批注化您不想編譯的程式代碼。
讓我們批注化一些程序代碼。
將下列程式代碼貼到
Main()方法主體中。// someWords is a string array. string[] someWords = { "the", "quick", "brown", "fox", "jumps" }; string[] moreWords = { "over", "the", "lazy", "dog" }; // Alphabetically sort the words. IEnumerable<string> query = from word in someWords orderby word select word;變數
moreWords目前未使用,但稍後可能會使用它,因此您可以註解掉這些行,而非刪除它。 選取moreWords定義中的全部內容直到結尾分號,然後選取 [文本編輯器] 工具列上的 [註解選取的行] 按鈕,或按下Ctrl+K 再按Ctrl+C。
C# 批註字元
//會新增至每個選取行的開頭,以批注化程序代碼。若要取消批注行,您可以選取它們,然後選取 [文本編輯器] 工具列上的 [取消批注選取的行] 按鈕,或選取 Ctrl+、Ctrl+U。
折疊程式代碼區塊
我們不想看到針對 產生的空的 Class1,因此為了清理程式碼視圖,讓我們將其收起。 在建構函式第一行的邊界中,選擇內含減號的小灰色方塊。 或者,如果您想要使用鍵盤,請將游標放在建構函式程序代碼中的任何位置,然後按 ctrl+M,Ctrl+M。
代碼區塊折疊至僅顯示第一行,後面接著省略號 (...)。 若要再次展開程式代碼區塊,請單擊現在有加號的相同灰色方塊,或按 Ctrl+M,Ctrl+M。 這項功能稱為 大綱,當您摺疊長方法或整個類別時特別有用。
如果您不想看到針對構造函式產生的空白建構函式,您可以將它折疊來簡化程式碼的檢視。 選取建構函式第一行邊界的插入號。 或者,如果您想要使用鍵盤,請將游標放在建構函式程序代碼中的任何位置,然後選取 Ctrl+、Ctrl+M 鍵。
代碼區塊折疊至僅顯示第一行,後面接著省略號 (...)。 若要再次展開程式代碼區塊,請選取插入號 (>),或再次選取 Ctrl+M、 Ctrl+M 。 這項功能稱為 大綱,當您摺疊長方法或整個類別時特別有用。
檢視符號定義
Visual Studio 編輯器可讓您輕鬆地檢查類型、方法等的定義。其中一種方式是流覽至包含定義的檔案,例如,選擇 [移至定義 ] 來參考符號的任何位置。 在不必將注意力移出工作檔案的情況下,更快速的方法是使用 查看定義。 讓我們查看 string 類型的定義。
以滑鼠右鍵點擊任何出現的
string,然後從內容功能表選擇 查看定義。 或者,按 Alt+F12。彈出視窗隨即出現,其中包含
String類別的定義。 您可以在彈出視窗內捲動,或甚至從窺視的程式代碼查看另一種類型的定義。
選擇彈出式視窗右上方具有「x」的小方塊,以關閉預覽定義視窗。
Visual Studio 編輯器可讓您輕鬆地檢查類型、方法或變數的定義。 其中一種方式是選擇 移至定義,或者在參考符號的任何位置按下 F12 鍵,不論其在哪個檔案中。 一種更快的方法就是使用 查看定義,這樣不會將焦點從您處理的程式代碼移開。
讓我們查看 string 類型的定義。
以滑鼠右鍵點擊任何出現的
string,然後從內容功能表選擇 查看定義。 或者,選取 Alt+F12 鍵。彈出視窗隨即出現,其中包含
String類別的定義。 您可以在彈出視窗內捲動,或甚至從窺視的程式代碼查看另一種類型的定義。
選擇彈出視窗右上方附有「x」的小方塊,以關閉預覽定義視窗。
使用 IntelliSense 完成單字
當您撰寫程式代碼時,IntelliSense 是寶貴的資源。 它可以顯示類型可用成員的相關資訊,或者方法不同重載的參數詳細資訊。 您也可以在輸入足夠的字元以消除歧義後,使用 IntelliSense 補全一個單詞。 讓我們新增一行程式代碼,將已排序的字串列印到主控台視窗,這是程式輸出的標準位置。
在
query變數下方,開始輸入下列程式代碼:foreach (string str in qu您會看到 IntelliSense 顯示 。
若要使用 IntelliSense 的文字自動完成功能插入其餘字組
query,請按 Tab。完成程式碼區塊,使其看起來像以下的程式碼。 您甚至可以輸入
cw,然後按 Tab 鍵 兩次來產生Console.WriteLine程式代碼,以再次練習使用代碼段。foreach (string str in query) { Console.WriteLine(str); }
當您撰寫程式代碼時,IntelliSense 是寶貴的資源。 它可以顯示類型可用成員的相關資訊,或者方法不同重載的參數詳細資訊。 您也可以在輸入足夠的字元以消除歧義後,使用 IntelliSense 補全一個單詞。
讓我們新增一行程式代碼,將已排序的字串列印到主控台視窗,這是程式輸出的標準位置。
在
query變數下方,開始輸入下列程式代碼:foreach (string str in qu您會看到 IntelliSense 快顯隨即出現,其中包含
query符號的相關資訊。
如果您使用具有 Copilot 訂用帳戶的 GitHub 帳戶登入,您也會看到程式代碼建議以灰色文字顯示。
若要使用 IntelliSense 的字詞自動完成功能來插入字詞的其餘部分
query,請按 Tab 鍵。完成程式碼區塊,使其看起來像以下的程式碼。 您可以輸入
cw,然後按 Tab 鍵兩次,以產生Console.WriteLine陳述式,進一步練習程式碼片段。foreach (string str in query) { Console.WriteLine(str); }
重構名稱
沒有人能一次就寫出正確的程式碼,而您可能需要變更的其中一件事就是變數或方法的名稱。 讓我們嘗試 Visual Studio 的 重構 功能,將 _words 變數重新命名為 words。
將游標放在
_words變數的定義上方,然後從滑鼠右鍵或操作選單選擇 [重新命名 ],或按 ctrl+R,Ctrl+R。快顯 [重新命名] 對話框會出現在編輯器的右上方。
輸入想要的名稱 字數。 請注意,查詢中
words的參考也會自動重新命名。 在您按下 Enter之前,請在 重新命名 彈出視窗中,選取 包含批注 的複選框。
按 Enter 鍵。
兩次出現的
words均已重新命名,程式碼註釋中的words引用亦已更改。
沒有人能一次就寫出正確的程式碼,而您可能需要變更的其中一件事就是變數或方法的名稱。 讓我們嘗試 Visual Studio 的 重構 功能,將 someWords 變數重新命名為 unsortedWords。
將游標放在變數的定義
someWords上方,然後從滑鼠右鍵或作功能表中選擇 [重新命名 ],或選取 F2 鍵。編輯器右上方會出現 [重新命名] 對話框。
輸入所需的名稱 未排序的字。 您會看到
unsortedWords指派語句中query的參考也會自動重新命名。 在您選取 Enter 鍵之前,請選取 [重新命名] 彈出視窗中的 [包含批注] 複選框。
選取 [Enter] 鍵。
程式碼中兩處出現的
someWords已被重新命名,同樣地,程式碼批註中的文字someWords也已重新命名。