作者realmeat (真肉)
看板Soft_Job
標題Re: [請益] 要如何說服同事停止命名類似iID的變數
時間Thu May 23 22:11:16 2013
※ 引述《onear (萬一)》之銘言:
: : → kuope:可是我覺得一眼就看出變數的型態比一個一個點還要直覺方便啊 05/23 16:42
: : → kuope:例如一頁有十個變數,我就不用特別去記每個變數的型態 05/23 16:43
: : 推 FukadaKyoko:所以我才來請教大家為什麼有加縮寫比較好懂呀!! 05/23 17:03
: : → FukadaKyoko:因為在專案內得不到解答 才來板上問 05/23 17:03
: : → FukadaKyoko:to kuo, 你說的沒錯 但大多數情況下其實不需知道型態 05/23 17:04
: : → FukadaKyoko:大多數情形下要了解的是變數的意義 05/23 17:04
: 個人的理由是加比較好,判斷型態還是其次,
: 能直接看就大致了解該變數是哪來的比較常用,尤其當維護別人程式的時候..
: 看是區域變數, 物件成員, 或是頁面UI元件等等....
: 不用大海撈針一樣翻來翻去,或是每個都拿來點點看,那很累。
: 例如:
: 當你熊熊看到一個變數名稱是age,你知道那是哪來的嗎?
: 一般來說,UI元件可能會命名為txtAge,物件成員可能是mAge,區域變數可能是iAge...
: 如果全部都是age,那時候作維護的就會很想殺人..
: 當然實際上,還是要了解變數的意義。
: 不過這個理由如果推到極致,那我們直接看CIL Code就好,還要visual studio作什麼?!
: 所以,加一下會比較好。
對於強IDE環境根本不用考慮這麼多
舉個例子來說 (都是隨便創class跟method)
Text text = Doc.getText(); // 從Doc 物件將text取出
text.doSomthing(); // 做了某件事
Parser parser = new Parser(); // 假設創建了某個Parse
parser.paserText(text); // 他要 parse text
如果是按鈕這物件
Button [] buttons = IO.getButtons();
for(Button button : buttons){
switch(button.index){
case Button.Index.A: ...
break;
}
}
強IDE環境, 這樣寫還真的頗爽
型態在編寫同時就會幫你檢查型別
這樣寫, 程式每個過程其實都很清楚
大部份連註解都不太需要, 因為光是'看'就知道他在幹嘛
但是弱IDE環境, 你這樣寫絕對是找死
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.84.7
※ 編輯: realmeat 來自: 114.37.84.7 (05/23 22:15)
→ coolcomm:為什麼弱IDE要找死@_@ 05/23 22:26
→ realmeat:因為我寫過, code長一點光比對型態就很累人了 05/23 22:27
→ coolcomm:既然變數都叫 buttons 了,很明顯就是裝 Buttons 的 coll 05/23 22:34
→ coolcomm:ection 吧=_= 05/23 22:34
推 FukadaKyoko:推推 就是這樣! 05/23 22:35
→ RadiationXen:我待的團隊也是這樣,但還是有一兩位使用Pascal撰寫 05/24 01:28
→ RadiationXen:風格來寫C#......很累贅,還會誤判區域變數跟屬性 05/24 01:29
→ TonyQ:你寫得沒有解決你回文的人問的問題啊。 :P 05/24 13:15