2010-12-02 227 views
-1

這不是關於意見的問題,而是關於選擇合適的上下文名稱的優點。我不認爲這是可能的重複,因爲重點不在於約定。 (重新打開)

我的同事想要根據類型信息和類別等因素命名事物來分類名稱,我完全不同意並且認爲變量,對象和類型(類)應該有簡短的描述性名稱,而不是重申形式語法。命名約定

例如

  • 只要有可能,我會嘗試用簡單的英文選擇最有意義的名稱。
  • 我喜歡PersonFilterFilterPerson當它是一個類型(類),但如果它是一個動作(函數或方法)
  • 我不想前綴我的上下文信息,如P代表參數變量,或_會員變量(字段)
  • 我永遠不會在我的變量中包含類型信息,例如tbFirstName(TextBox firstName)類型是由它的聲明給出的,而不是名稱。
  • 我絕不會跟一些任意的名字前綴我的變量,因爲我想將它們組合在一起,緊貼在智能感知(自動完成)窗口

我在這種情況下,用C#主要工作,並瞭解其他語言如果不能從靜態類型中獲益,可能會有其他問題,但是,我認爲IDE(Visual Studio)的支持使得很多舊的約定變得沒有必要,而且很簡單。

要清楚地知道,靜態語言在編譯時有很多可用的類型信息,這使得基於類型冗餘的前綴成爲可能。迄今爲止,微軟在Visual Studio中使用的IntelliSense引擎做得很好,但它可以做得更好。 (當運行時解析類型時,這是不可能的,但是,假設不同的命名約定適用於靜態和動態類型的語言是很自然的,但是,我可能會認爲應該沒有任何區別,只是因爲這個事實)

鑑於這個問題的背景下,我們是你不同意或同意,並有這些論據的優點嗎?

+0

'受益於靜態打字'...你確實意識到這是一個意見問題? – Javier 2010-12-02 13:49:20

+1

除了文本框,按鈕等,我幾乎完全同意。如果使用前綴,我認爲在IntelliSense中查找控件要容易得多。 – neo2862 2010-12-02 13:49:38

回答

-1

我同意你所有的觀點,除了第三個觀點。我傾向於在每個成員字段寬度m_和每個靜態成員字段前加上s_。快速查看代碼時,對我來說有很大的不同。