简洁代码--命名

代码整洁之道笔记

[TOC]

命名

代码的整洁,从命名开始

名副其实、准确

名称应该能够说明该(变量、类、函数)存在的意义:

int d;  //无法体现出该变量的用途
int daysSinceCreation;
int elapsedTimeInDays;

准确的命名能够清晰的说明代码的意图:

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

    return list1;
}

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

    return flaggedCells;
}

避免误导

少用专有名词:

int accountLists | int accountGroup | int accounts;
显然List会让人想到List数据类型,需要改用另外两个更好的选择。

有意义的区分

如用info、data这样的词修饰的命名意义含混。
动词不应该出现在变量名中。table不应该出现在表名中:

nameString     ===> name
CustomerObject ===> Customer
moneyAmount    ===> money
customerData   ===> customer

可阅读的名字

简单来说就是别自己瞎造词,选通用一点的单词。

类名

不应该是动词,不应该是语意含混词(data、info、manager、processor)

方法名

应该是动词或者动词短语。

getXXX();
setXXX();
deletePage();

概念单一对应

如插入数据方法用add或create,编辑用edit或update。
如控制不要同时出现controller、manager或

添加有意义的语境

有时候命名的方法变量不能清晰的表明意图,这个时候可以将方法放在类中,提供更明确的语境:

public class GuessStatisticsMessage {
    private String number;
    private String verb;

    public String make() {

    }
}

最关键的是

一定要学好英语啊~~~~~~~~ QAQ

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 代码中到处都需要命名。作为程序员,我们得给类命名,给变量命名,给函数命名,给参数命名,给命名空间命名,等等等等。下...
    流哲羽阅读 1,724评论 1 5
  • 阅读《代码整洁之道》有两种原因,第一种:你是个程序员;第二,你想成为更好的程序员。读完后,你能获得如下技能: 知道...
    清风流苏阅读 1,091评论 0 2
  • 1.使用能够表达意图的名字 名字得能告诉我们它要做什么,为什么存在,以及是如何工作的。选择能够表达意图的名字,将更...
    恩德_b0c2阅读 157评论 0 0
  • 每一个程序员都想写出一段整洁而富有艺术感的代码,让写代码从枯燥乏味的过程转化为可欣赏的艺术品。与世上其他很多事情相...
    RobertY阅读 426评论 0 0
  • 我一直对于改变自己和接纳自己这两点有些迷茫。 曾经一度想把自己改造成理想的样子。明明不喜欢人多的场合,却偏偏逼自己...
    山林九阅读 737评论 0 2