变量

  • 名字尽可能写清楚作用,不要只表达当前语境的意思。

    • “设想你有名为firstName、lastName、street、houseNumber、city、state和zipcode的变量。当它们搁一块儿的时候,很明确是构成了一个地址。不过,假使只是在某个方法中看见孤零零一个state变量呢?你会理所当然推断那是某个地址的一部分吗?
      可以添加前缀addrFirstName、addrLastName、addrState等,以此提供语境。”

      摘录来自: 马丁(Robert C. Martin). “86-代码整洁之道。” Apple Books.

函数

  • 一个函数,不要超过20行,超过20行,考虑是否能拆分成多个函数。

  • 不要两层以上的嵌套语句,如果有,考虑是否可以拆分逻辑,或者换种设计。

  • 条件判断尽可能简单,不要让读者,看半天,也不知道你判断的意图是什么。如果条件是那种多个联合判断的,最好是弄个方法,返回判断结果。读者可以直接通过函数名,就了解你的意图。

  • 函数的参数,不要超过三个,如果超过三个,就尝试将相关参数封装成类。

  • 一个函数最好只做一件事。

  • 如果有try catch最好是能将try catch放到单独的函数中处理,不要放在流程中。

  • 别返回null。

    • “如果你打算在方法中返回null值,不如抛出异常,或是返回特例对象。如果你在调用某个第三方API中可能返回null值的方法,可以考虑用新方法打包这个方法,在新方法中抛出异常或返回特例对象。”

      摘录来自: 马丁(Robert C. Martin). “86-代码整洁之道。” Apple Books.

  • 别传递null值。

  • 函数先判断要使用的变量是否会异常。