Java程式變數的命名建議

程式撰寫其實沒有固定的格式。但的確有些不起眼的習慣可以讓程式撰寫人員減少錯誤的發生和方便溝通。減少錯誤發生所帶來的最顯著好處就是增加生產力,達成多贏的局面。因此好的變數的命名主要目的就是讓程式變的更容易理解,不管是對程式撰寫者或是其他協同開發的伙伴。

為啥標題寫的是變數命名建議呢?因為命名沒有對錯的問題,只有好壞之分。變數命名的方法很多,最有名的是先前微軟使用的匈牙利式命名法。但此法在實務上有些麻煩,變數容易變的太長,使用上也比較複雜。我見過的多數工程人員並不喜歡此法。

回歸到原問題。變數命名的目的是為了容易閱讀。所以除了原來講義上Java語言建議的命名方式外。我們對變數的命名主要要能夠快速的區分「區域變數」、「方法變數」及「物件屬性」。所以我們就可以這樣來撰寫程式

public class Student
{
    private String mName; // 在屬性前加一個英文字m
    
    public void setName(String aName) // 方法變數前加英文字a
    {
        String str = aName.trim(); // 區塊變數就直接命名
        mName = str;
    }
}

用這種命名法是不是很快的就能區分出這三種變數了呢?

可能有人會問那變數型態怎麼辦?如何加入命名規則中?其實我的建議是這部份就先不管了。因為現在程式碼開發工具及閱讀工具越來越強大,變數型態用工具看很快。因此命名方法只要能在閱讀程式過程能快速區分變數種類就是很大的幫助了。更重要的是:太複雜的命名方法,是很難被遵守的。這也是人性。

留言

熱門文章