了解如何使用程式碼編輯器
在這個 10 分鐘的 Visual Studio 程式碼編輯器簡介中,我們會將程式碼新增至檔案,以了解 Visual Studio 讓撰寫、導覽和了解程式碼更加輕鬆的一些方式。
提示
如果您尚未安裝 Visual Studio,請前往 Visual Studio 下載頁面免費進行安裝。
如果您尚未安裝 Visual Studio,請前往 Visual Studio 下載頁面免費進行安裝。
本文假設您已熟悉某一種程式設計語言。 如果您還不熟悉,建議您先查看一種程式設計語言的快速入門,例如使用 Python 或 C# 建立 Web 應用程式,或是使用 Visual Basic 或 C++ 建立主控台應用程式。
提示
若要繼續遵循這篇文章,請確定您已為 Visual Studio 選取 C# 設定。 如需選取整合式開發環境 (IDE) 的設定資訊,請參閱選取環境設定。
建立新的程式碼檔
從建立新檔案並在其中新增一些程式碼開始。
開啟 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 會為您產生程式代碼建議。 建議的實作會以灰色文字顯示。
- 若要接受建議,請選取 [索引卷標]。
在 Visual Studio 中開始使用 GitHub Copilot。 請注意,需要 Visual Studio 2022 17.5.5 或更新版本。
使用程式碼片段
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#,程式碼片段清單如下:
此清單包含的程式碼片段可用於建立類別、建構函式、for 迴圈、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+K、Ctrl+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+K、Ctrl+U。
摺疊程式碼區塊
我們不想要看到所產生的 Class1
具有空白建構函式,所以為了整理我們的程式碼檢視,讓我們將其摺疊。 選擇建構函式第一行邊緣中其內有減號的小型灰色方塊。 或者,如果您偏好使用鍵盤,請將游標放在建構函式程式碼中的任何位置,然後按 Ctrl+M、Ctrl+M。
程式碼區塊只會摺疊到第一行,並且後面接著省略符號 (...
)。 若要再次展開程式碼區塊,請按一下現在其內有加號的相同灰色方塊,或再次按 Ctrl+M、Ctrl+M。 這項功能稱為大綱,而且特別適用於摺疊較長的方法或整個類別。
我們不想要看到所產生的 Class1
具有空白建構函式,所以為了整理我們的程式碼檢視,讓我們將其摺疊。 選擇建構函式第一行邊緣中其內有減號的小型灰色方塊。 或者,如果您偏好使用鍵盤,請將游標放在建構函式程式碼中的任何位置,然後選取 Ctrl+M、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 示範
query
符號的 [快速諮詢]。若要使用 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
符號的相關資訊。若要使用 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。 請注意,也會自動重新命名查詢中
words
的參考。 按 Enter 鍵之前,請選取 [重新命名] 快顯方塊中的 [包括註解] 核取方塊。按 Enter。
出現的這兩個
words
已重新命名,以及程式碼註解中的words
參考。
沒有人第一次就取得正確的程式碼,而且您可能想要變更的其中一個項目就是變數或方法的名稱。 讓我們來試試看 Visual Studio 的重構功能,以將 someWords
變數重新命名為 unsortedWords
。
將資料指標放在
someWords
變數的定義上方,然後從右鍵功能表或捷徑功能表中選擇 [重新命名],或選取 F2 鍵。[重新命名] 對話方塊會出現在編輯器右上方。
輸入所需的名稱 unsortedWords。 您會看見
query
指派陳述式中unsortedWords
的參考也會自動重新命名。 按 Enter 之前,請選取 [重新命名] 快顯方塊中的 [包括註解] 核取方塊。選取 Enter 鍵。
您的程式碼中出現的這兩個
someWords
已重新命名,以及程式碼註解中的someWords
文字。