2019年11月11日 星期一

讀書心得 - Clean Code - Chapter 2

Chapter 2 - 有意義的命名

使之名符其實

     選一個好的名稱很花時間,但省下的時間更多。
    // 沒命名
    public List<int[]> getThem(){
        List<int[]> list1 = new ArrayList<int[]>();
        for (int[] x : theList)
            if (x[0] == 4)
                list1.add(x);
        return list1;
    }
    // 有命名
    public List<int[]> getFlaggedCells(){
        List<int[]> flaggedCells = new ArrayList<int[]>();
        for (int[] cell : gameBoard)
            if (cell[STATUS_VALUE] == FLAGGED)
                flaggedCells.add(cell);
        return flaggedCells;
    }
     有命名的參數也比較好找,STATUS_VALUE 和 FLAGGED。

類別的命名

     使用名詞或名詞片語
  • Account
  • AddressParser
  • Customer
  • WikiPage
     避免以下之命名
  • Manager
  • Data
  • Info

方法的命名

     使用動詞或動詞片語
  • deletePage()
  • save()
  • 取出器 - getXX()
  • 修改器 - setXX()
  • 判定器 - isXX()

0 意見:

張貼留言

Popular Posts