Java开发规范(工作小总结)

目录

    • 一、代码规范
      • 1.命名规范
      • 2.开发标准-OOP规约
      • 3.开发标准-日期时间
      • 4.开发标准-集合处理
      • 5.开发标准-控制语句
    • 二、接口测试标准
    • 三、后台注释规范

一、代码规范

1.命名规范

  • 字母+数字+下划线+dollar符($)组合的方式

    不能以数字或者美元符号或者下划线开头;
    不能以美元符号或者下划线结束

  • 驼峰式命名

    方法名、变量名、参数名都使用lowerCamelCase驼峰式命名

  • 严禁使用拼音与英文混合的形式,更不能直接使用中文

  • 常量名称全部大写,单词用下划线隔开,力求语义完整

    MAX_STOCK_COUNT

  • 抽象类命名使用Abstract或Base开头;异常类命名以Exception结尾;测试类以要测试的类名称开始,以Test结尾

    BasePerson

  • 数组使用int[] array形式

  • POJO类中任何布尔类型的变量不要加is前缀,不然可能引起序列化错误

  • 规范化缩写
    如Config->Conf

  • 大括号要写规范

    1.(空格){}
    2.(空格){
    // …内容
    }

  • 小括号 if / else / for / while / do 等与括号之间必须加空格

    if (1 == 2)

  • 注释的双斜线与注释内容之间有且仅有一个空格

  • 方法参数在定义和传入时,多个参数逗号后边必须加空格

    method(args1, args2, args3)

2.开发标准-OOP规约

  • 直接使用类名访问静态变量或者方法

  • 所有重写的方法都必须使用@Override注释

  • 不要使用过时的类和方法

  • 使用equals方法时,应该让常量或者确定值来调用equals。否则容易抛空指针异常

    如:“test”.equals(object)

  • 整型包装类对象之间 值的比较,全部使用equals方法比较;
    Java开发规范(工作小总结)_第1张图片

  • 属性类型要与数据库字段类型相匹配

    如:数据库字段的numeric必须与类属性的Long类型相对应

  • Java开发规范(工作小总结)_第2张图片

3.开发标准-日期时间

  • 正确的日期格式:“yyyy-MM-dd HH:mm:ss”
    在这里插入图片描述
  • 获取当前毫秒数
    System.currentTimeMillis();

4.开发标准-集合处理

  • 集合判空 isEmpty();
    在这里插入图片描述

  • hashCode和equals处理
    Java开发规范(工作小总结)_第3张图片

  • 边遍历边移除(add/remove) Collection 中的元素使用迭代器而不是foreach

    边遍历边修改 Collection 的唯一正确方式是使用 Iterator.remove() 方法,如下:
    并发操作时,也要对Iterator加锁

    Iterator<Integer> it = list.iterator();
    while(it.hasNext()){
       // do something
       it.remove();
    }
    

    一种最常见的错误代码如下:

    for(Integer i : list){
       list.remove(i)
    }
    //运行以上错误代码会报 ConcurrentModificationException 异常。
    这是因为当使用 foreach(for(Integer i : list)) 语句时,
    会自动生成一个iterator 来遍历该 list,但同时该 list 正在被 Iterator.remove() 修改。
    Java 一般不允许一个线程在遍历 Collection 时另一个线程修改它。
    

5.开发标准-控制语句

continue一般不能用于switch语句中,但是switch语句如果在循环内的话,就可以使用continue语句。相当于说,跳出switch语句,跳出本次循环,进行下一次循环。
break:循环中遇到break,意思是说跳出本次循环,或跳出switch语句。

  • switch必须包含default且放在最后;

    break是退出switch语句块;return是退出方法体

  • if / else / for / while / do 都要使用大括号;即使一行代码也要使用大括号

二、接口测试标准

  • 接口测试意义:

    ​ 按照分层测试模型,处于中间层的接口测试,在效率,成本,技术,实施难度上综合来讲,是收益最大的。相较于传统的UI层次的测试,接口测试把测试提前了并且能够覆盖到一些UI测试无法触及的功能点,提高了测试的覆盖率。接口测试也更容易实现自动化持续集成,支持后端快速发版需求。

  • 接口测试标准

    # 1. 要求验证接口正常调用无误
    根据业务规则构造合适的参数进行接口调用,接口请求正常且业务处理逻辑正确。
    # 2. 验证接口入参必填项
    要求入参必填项均填入的情况下,接口请求正常且业务处理逻辑正确。
    入参必填项不填或传入为Null的情况下,返回错误信息,内容包含具体什么项目没有填写。
    # 3. 验证接口入参选填项
    要求选填项不填或者为null时,接口请求正常且业务处理逻辑正确。
    # 4. 验证接口入参的字段类型
    要求字段类型与接口文档一致时,接口请求正常且业务处理逻辑正确。
    字段类型与接口文档不一致时,接口请求失败并返回相关信息。
    

    三、后台注释规范

  1. 类、类属性、类方法的注释必须使用 Javadoc 规范,使用/**内容*/格式,不得使用// xxx 方式。

    /**
    *内容
    *内容
    */
    
  2. 所有的类都必须添加创建者和创建日期。

  3. 方法内部单行注释,在被注释语句上方另起一行,使用// xxx注释。

    方法内部多行注释使用/*内容*/注释,注意与代码对齐。

  4. 所有的枚举类型字段常量字段必须要有注释,说明每个数据项的用途。

  5. 对于方法参数需要填写参数注释。

  6. 代码修改的同时,注释也要进行相应的修改,尤其是参数、返回值、异常、核心逻辑等的修改。

  7. 在类中删除未使用的任何字段和方法;在方法中删除未使用的任何参数声明与内部变量。

  8. 对于注释的要求:

    • 第一、能够准确反映设计思想和代码逻辑;
    • 第二、能够描述业务含义,使别的同事能够迅速了解到代码背后的信息。完全没有注释的大段代码对于阅读者形同天书。
    • 注释是给自己看的,即使隔很长时间,也能清晰理解当时的思路;注释也是给继任者看的,使其能够快速接替自己的工作。
  9. 好的命名、代码结构是自解释的,注释力求精简准确、表达到位。避免出现注释的一个极端:过多过滥的注释,代码的逻辑一旦修改,修改注释是相当大的负担。

  10. 编写注释时需要用确定的语言,禁止出现 “当前不用了” ," 可能之后会用到 " 此类不确定描述,对代码后续维护中会造成困扰。

  11. 特殊注释标记,请注明标记人与标记时间。 待办事宜(TODO):标记好标记人,标记时间和预计处理时间。

你可能感兴趣的:(入职工作学习,java,网络,开发语言,springboot)