欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第一篇---有意义的命名 ------代码整洁之道读书笔记

程序员文章站 2022-04-26 23:28:48
...

好的命名提高代码质量首要的手段之一,做到见名知意.。代码不仅是写给自己看, 更是写给别人看的.。 以下规则可以参考:

1.1 名副其实

变量、函数或类的名称应该回答所有的大问题,包括为什么存在、做什么事和应该怎么用。如果需要用注释补充,就不是名副其实了。

int d; // 消逝的时间,以日计。

改成以下更好

int elapsedTimeInDays;

下列的代码的目的不明确:

public List<int[]> getThem(){
        List<int[]> list1 = new ArrayList<>();
        for (int[] x : theList) {
            if (x[0] == 4){
                list1.add(x);
            }
        }
        return list1;
}

改成如下

public List<int[]> getFlaggedCells(){
    List<int[]> flaggedCells = new ArrayList<>();
    for (int[] cell : gameBoard) {
        if (cell[STATUS_VALUE] == FLAGGED){
            flaggedCells.add(cell);
    }
    return flaggedCells;
 }

进一步改成以下的形式

 public List<int[]> getFlaggedCells(){
        List<int[]> flaggedCells = new ArrayList<>();
        for (Cell cell : gameBoard) {
            if (cell.isFlagged()){
                flaggedCells.add(cell);
        }
        return flaggedCells;
    }

1.2 避免误导

别用accountList指一组账号,用accountGroup,bunchOfAccounts或则accounts都可以。容易变量类型。不用小写l和大些O等容易混淆的符号。

1.3 做有意义的区分

如果你有Product类,还有ProductInfo和ProductData,名称不同,意思是却无区别。

1.4 使用读得出来的名称

private Date generationTimestamp就比private Date genymdhms(生成年月日时分秒)好得多。

1.5 使用可搜索的名称

int WORK_DAYS_PER_WEEK = 5 ,搜索WORK_DAYS_PER_WEEK就比5简单的多。

1.6类名

类名用名词:如Customer,WikiPage等,避免使用Manager,Processor,Info等。

1.7 方法名

使用动词,如postPayment。

相关标签: java 代码整洁