zoukankan      html  css  js  c++  java
  • Java编程代码规范中值得留意的地方

    最近在加强Java代码规范,复习的过程中发现除了空格、驼峰、括号等常见的规范之外,还有一些平时不太注意但值得落实的规范,记录一下:

    1. 30秒规则,方法实现在30秒内需要被别人读懂

    2. 单个源文件最大长度2000行

    3. 单行字符不超过120个
      package、import、javadoc的url等不受限制

    4. import不要使用通配符,避免引入新的类冲突

    5. 0b、0x都用小写,long用大写(1L)

    6. 领域模型命名规范
      数据对象:xxDO
      数据传输对象:xxDTO
      展示对象:xxVO
      名字不要命名为xxPOJO

    7. 不要在finally块中使用return,不然会造成try块中的return不再执行

    8. 异常不要用来做流程控制、条件控制
      违背设计初衷
      异常的处理效率远低于条件判断

    9. 不要在方法内调用Pattern.compile()
      避免反复编译,尽量只调用一次

    10. 不用使用魔法值,用常量定义来代替
      -1,0,1不被视为魔法值

    11. 返回数组/集合时候返回空数组/空集合而非null

    12. Integer等数值封装类用equals代替==
      在-128~127范围,Integer对象在IntegerCache.cache产生,会复用已有对象,可以用==判断
      在这个范围外的数据会在堆上产生,不会复用已有对象

    13. 不同的Map类集合KV注意能不能设置为null

      HashTable:key不能为null,value不能为null

      HashMap:key可以为null,value可以为null

      ConcurrentHashMap:key不能为null,value不能为null

      看一下各自的put()方法实现就知道了

    14. Arrays.asList()或者List.of()转化后不可修改
      适配器模式,本质上仍然是数组

  • 相关阅读:
    盘点开发中那些常用的MySQL优化
    刚入职!就遇到上亿(MySQL)大表的优化
    面试技巧|“唇枪舌剑”之十大招式
    rpc是什么?php中流行的rpc框架有哪些?
    使用 memory_limit 限制 PHP 进程的内存使用
    swoole查看子进程与主进程关系
    使用SecureCRT连接AWS的EC2(Linux系统)亲测可行
    substitute Simple JavaScript Template :
    git 简单图表
    jquery 队列
  • 原文地址:https://www.cnblogs.com/jacobchen/p/14371470.html
Copyright © 2011-2022 走看看