2011-01-27 60 views
1

所以,如果我在C#這樣的功能(#1)代碼格式樣式 - 哪一個是最好

private void Test(){ 

    } 

,如果你打的CTL KD,它改變(#2)

private void Test() 
    { 

    } 

這裏有兩個問題。
1.是否有任何熱鍵組合將代碼從#2轉換爲#1?
2.是否有任何Micorosoft建議使用哪一個。我更喜歡#2,但我的同事更喜歡#1,他認爲這是微軟推薦的,但從來沒有給我任何鏈接。我個人更關心代碼的可讀性然後推薦,但只是好奇,如果有任何這樣的建議。

+1

#2看起來像GNU編碼標準:) http://www.gnu.org/prep/standards/standards.html#Formatting – Matten 2011-01-27 21:27:25

+0

好的。有沒有人知道Micorosoft,#1,#2或其他什麼風格。如果我們可以看到他們的一些代碼(在這種情況下,反射器可能不會起作用) – imak 2011-01-27 21:35:35

回答

2

」首選「當然是主觀的,但如果你對所有感興趣的是一致性,那麼微軟的建議將被編碼在StyleCop之內,檢查代碼爲你這樣的事情(以及更多)。我認爲它使用了風格2,但是花括號,它是值得的。

假設此頁面是準確的,這裏有一些內部風格的指導方針。第2項。2回答您的問題(他們使用樣式#2,但與在括號中額外的縮進)

2

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

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

但是,您可以進入工具/選項/語言/ C#/格式並根據需要進行更改。 ReSharper提供了更多選擇。然後你可以用你選擇的風格重新格式化代碼。

0

代碼約定有時是主觀的。您可能會發現公司嚴格執行與其他公司/人員不同的代碼風格。

回答: 1.按CTRL-K,D之後沒有但是CTRL-Z(但是如果你保存並關閉文件,沒辦法回來) 2.我不知道有沒有發表微軟關於這個主題,但他們使用VS推薦的代碼樣式和他們所有的代碼片段。所以這應該是推薦版本

順便說一句,我會在樣品1更喜歡空間:private void Test() {

0

偏好,這將取決於你的業務的編程結構(如果有一個到位) 。我自己推薦(編號2)

private void Test() 
{ 

} 

您通常可以更改IDE以便根據需要格式化。

3

要從#2轉換到#1,請轉到工具 - >選項 - >文本編輯器 - > C# - >格式 - >新行,更改適當的項目(在本例中,「將大括號放在新行方法「),然後再點擊Ctrl KD

1

在這一天結束,這是一個個人喜好...有需要確定的幾件事情:

  1. 要保持一致,不僅僅是通過文件,而是通過整個項目。
  2. 如果您正在使用現有代碼風格的項目,那麼您應該自己使用該編碼風格。
  3. 根據項目的不同,您可能無法選擇自己的編碼風格。變通。