今天我们要一起学习是开发手册的编程规范中的控制语句和注释规约。相信大家都已经使用过sonar这样的静态代码扫描工具,不知道是否有注意过哪种异味占比最多呢?哪种异味一直都很难清除呢?恐怕其中一大类就是控制语句的复杂度太高了。那么阿里的规范里对于控制语句的要求有哪些呢,请看下图:
由上图,我们可以看到,其实经常使用的控制语句无外乎if/esle或者switch。而它这里也只是说明了使用的方法,并没有指出当我们必须使用复杂的判断实现逻辑时怎么降低复杂度的方法。这里我想提出,大家可以尝试使用策略模式代替传统的逻辑判断语句。但是什么时候使用策略模式比较好,什么时候使用if/else比较好,就需要大家在先熟练掌握了这一设计模式后,根据自己的开发逻辑实际情况进行评估。切勿陷入过度模式。我们的出发点,应该保持在降低代码复杂度和提高可读性上。
说到可读性,就不能不提代码注释了。
请看下图
不知道大家是的有自己生成过自己写的java代码对应的java doc。如果还没有的话,可以自己生成看看,这个文档会很好的反映你的类,方法是否注释得当。对于注释,最后再说一句,请善待你的注释,对你还是他人都会受益无穷。