美文网首页
Java代码规范之控制语句

Java代码规范之控制语句

作者: 梦浩然 | 来源:发表于2018-06-05 06:48 被阅读15次
    1. 在一个switch块内部,每个case要么通过break/return来终止,要么注释说明程序将继续执行到哪一个case为止,在一个switch块的内部,都必须包含一个default语句并且放在最后,即使是空代码

    2. 在if/else/for/while/do 语句中必须使用大括号,即使只有一行代码,避免采用单行的编码方式:如 if(condition) return;

    3. 在高并发的场景中,避免使用 等于 判断作为中断或退出的条件。
      原因:如果并发控制没有处理好,容易产生等值条件被击穿的情况,使用大于或者小于的区间判断条件来进行代替
      经典例子:判断剩余的奖品的数量等于0的时候,终止发放奖品,但因为并发处理错误导致奖品数量瞬间变成了负数,这样的话,活动无法终止

    4. 表达异常的分支判断的时候,少用if else 可以改写成
      if(!condition){
      return;
      }
      // continue else sentence
      注:超过三层的条件判断语句,可以使用谓语句,策略模式,状态模式来实现

    5. 不要在条件判断中执行过于复杂的语句,可以将判断的结果存在一个bool变量中,后对此变量进行判断即可。(可读性)

    6. 循环体中的语句一定要考虑性能。
      移动到循环体外:定义变量,定义对象,获取数据库的连接,进行不必要的try catch 操作(如果可以移到体外)

    7. 尽量通过正常的逻辑进行判断,对于逆向的逻辑操作谨慎,如取反(不利于理解和维护)

    8. 接口的参数保护

    9. 参数校验的场景

    • 频次低的方法(频次高的在总体的效率上会降低)
    • 很重要的方法(执行时间开销大,或者功能关键,影响很大),即使执行频次低,但如果因为没有校验而导致异常,得不偿失(重要是保证整体的运行稳定)
    • 需要极高稳定性和可靠性的方法
    • 对外提供的接口一定要注意检验,防止交互的成本,一两句能节省很多交互成本,质量和稳定才是做产品的路
    • 敏感的权限的入口
    1. 不需要参数检验的场景
    • 极有可能被循环调用的方法,在方法参数注明外部参数检查的要求
    • 被声明成private的只会被自己的调用的方法,只要保证调用的参数已经做过了检验,可以不用再检验。

    相关文章

      网友评论

          本文标题:Java代码规范之控制语句

          本文链接:https://www.haomeiwen.com/subject/ziwusftx.html