簡體   English   中英

代碼格式樣式-哪一種更可取

[英]Code formatting styles - which one is preferable

所以如果我在c#(#1)中有這樣的功能

private void Test(){

    }

如果您按下Ctl KD,它將變為(#2)

private void Test()
    {

    }

這里有兩個問題。
1.是否有任何熱鍵組合將代碼從#2轉換為#1?
2. Micorosoft是否建議使用任何建議。 我更喜歡#2,但是我的一個同事更喜歡#1,他認為這是Microsoft推薦的,但從未給我任何鏈接。 我個人更關心代碼的可讀性,然后是推薦,但是只是好奇是否有這樣的推薦。

要從#2轉換為#1,請轉到“工具”->“選項”->“文本編輯器”->“ C#”->“格式設置”->“新行”,更改相應的項(在這種情況下,“在方法的新行上放置大括號”) ,在對話框中單擊確定,然后再次按Ctrl KD

Visual Studio帶有樣式#2作為默認樣式,因此,根據我的經驗,幾乎所有 C#代碼都使用這種樣式。 但是,示例中的括號都沒有明顯的原因縮進。 更典型的是:

private void Test()
{
    foreach (int x in bar)
    {
        Console.WriteLine(x);
    }
}

但是,您可以進入“工具” /“選項” /“語言” /“ C#” /“格式”,然后根據需要進行更改。 ReSharper提供了更多選擇。 然后,您可以按照所選樣式重新格式化代碼。

當然,“ preferable”是主觀的,但是如果您只關心一致性,則Microsoft的建議已編入StyleCop中 ,它將自動為您檢查代碼中是否存在此類(以及更多)內容。 我認為它使用樣式2,但是花括號要花些錢。

假設此頁面准確無誤,這是一些內部樣式准則。 項目2.2回答了您的問題(它們使用樣式#2,但不帶有大括號的額外縮進)

歸根結底,這是個人喜好...不過,有幾件事需要確定:

  1. 保持一致,不僅通過文件,而且通過整個項目。
  2. 如果您正在使用現有代碼樣式進行項目,則應自己使用該代碼樣式。
  3. 您可能無法選擇編碼風格,具體取決於項目。 變通。

代碼約定有時是主觀的。 您可能會發現一家公司嚴格實施與其他公司/人員不同的代碼樣式。

要回答:1.只是在按CTRL-K,D之后立即按CTRL-Z(但是如果保存並關閉文件,就沒有回頭路了)2.我不知道Microsoft沒有關於該主題的出版物,但是他們使用VS建議的代碼樣式以及其所有代碼片段中的樣式。 所以這應該是推薦版本

順便說一句,我希望在示例1中有一個空格: private void Test() {

偏好,這取決於您的業務編程結構(如果有的話)。 我本人(2)

private void Test()
{

}

通常,您可以通過任意方式更改IDE的格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM