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

一、代码规范

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方法比较;
    在这里插入图片描述

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

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

  • 在这里插入图片描述

3.开发标准-日期时间

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

4.开发标准-集合处理

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

  • hashCode和equals处理
    在这里插入图片描述

  • 边遍历边移除(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):标记好标记人,标记时间和预计处理时间。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
阿里巴巴是中国最大的电子商务公司之一,拥有众多的Java开发项目。为了统一和规范代码风格,提高代码质量和可维护性,阿里巴巴Java开发团队制定了《阿里巴巴Java开发规范》(以下简称规范)。 这本《阿里Java开发规范pdf》详细介绍了阿里巴巴Java开发团队在编码、命名、注释、异常处理、并发控制、日志记录等方面的最佳实践和建议。规范的目的是为了更加规范和一致地编写Java代码,提高代码的可读性和可理解性。 《阿里Java开发规范pdf》主要包括以下几个方面的内容: 1. 命名规范:包括类命名、方法命名、变量命名等。通过一致的命名规范,可以使代码更易于阅读和理解,降低开发人员维护代码的难度。 2. 编码规范:包括代码缩进、换行、代码块的使用等。规范要求开发人员编写简洁、清晰、易于理解的代码,避免出现冗余和复杂的代码。 3. 注释规范:包括方法注释、代码块注释等。规范要求开发人员在关键代码段添加必要的注释,用于解释代码的用途和功能。 4. 异常处理:规范指导开发人员应该合理处理异常情况,避免出现未捕获的异常导致程序崩溃。 5. 并发控制:规范提供了在多线程环境下编写安全代码的建议和最佳实践。 6. 日志记录:规范引导开发人员正确使用日志系统,记录重要的操作和异常信息,方便后期的系统监控和故障排查。 总之,《阿里Java开发规范pdf》是阿里巴巴Java开发团队多年经验总结的产物,对于编写高质量的Java代码有着重要的指导作用。它不仅适用于阿里巴巴内部的Java项目,也可以作为广大Java开发人员的参考和学习资料,帮助他们编写更规范、更易于维护的Java代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大龄烤红薯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值