代码设计与优化的思想

判空的操作以及使用

时刻考虑有些代码获取值的是否为空的情况,然后在为空的情况下,记录警告日志,以及让程序结束,不需要再执行下去,也就是 return


import cn.hutool.core.util.ObjectUtil;// 这里用的 hutool的工具包
import lombok.extern.slf4j.Slf4j; // lombok
@Slf4j
public class SupplierBalanceServiceImpl{

//  private final Logger logger = LoggerFactory.getLogger(getClass());这是不用注解的时候的默认日志创建

// 比如这里我们获取接口有可能是空的,我们需要对其进行判断
ApConfigInterface apConfigInterface = getApConfigInterface(Constants.S_NX_BALANCE_CODE);
        
        if(ObjectUtil.isNull(apConfigInterface) ){
            log.warn("未获取到接口信息");
            return; // 记住一定要return ,因为如果为空的话,下面如果还有代码需要执行,就没啥意义了
        }
}

还有如果可能为空值的对象进行比较 equals 的时候不要放在前面

// Constants.ZERO_STR 这是我们自定义的常量 0 

if(Constants.ZERO_STR.equals(code)){ // 不要写成 code.equals(Constants.ZERO_STR),因为code为null 就会报空指针
    System.out.println("正确");
}

// 或者用这种判断
public Boolean isSuccessFul(){
        return Objects.nonNull(code) && Constants.ZERO_STR.equals(code);
    }

日志的记录

然后在日志警告的时候,给他有个唯一标识,防止在多线程的情况下,我们分不哪个日志对应哪个线程。然后我们尽量让日志记录更规范

// 比如说这个 AppKey 就是唯一标识,这样也方便我们对日志进行查询
   if(StringUtils.isBlank(result)){
            log.warn("账号:{},余额查询未返回结果", res.getAppKey());
            return;
        }

注释的使用

一定要在每一个方法对象的上面声明注释,可以让我们的阅读代码的时候更加一目了然更加方便

变量的使用

如果我们只是需要进行对象属性的使用,就不需要将对象的属性声明出来,避免浪费内存空间,
当然如果我们频繁的需要对这个变量进行操作的时候,还是需要将其定义出来

比如

String appKey = res.getAppKey();
if(StringUtils.isBlank(result)){
            log.warn("账号:{},余额查询未返回结果", appkey);
            return;
        }

//上面这种就是只是用到了对象的某个属性,就不需要声明出来了,可以更简洁一定,直接调用

if(StringUtils.isBlank(result)){
            log.warn("账号:{},余额查询未返回结果", res.getAppKey());
            return;
        }

不同层次之间使用进行传输数据或者交互的注意细节

比如 DTO用来进行业务系统(用户)和我们后端进行数据的传输,我们命名这些对象的时候尽量让其更加规范,例如 : 一个用户请求传输过来的属性 我们可以命名为ReqDto,同理响应给用户的数据可以命名为
RespDto

还有一种就是后端直接和前端页面打交道的 VO 对象,就是前端页面上的参数,用来直接展示的,我们需要在后端给其定义需要的 vo 对象 ,

一般我们使用的比较多的就是这两个了,其他的 比如 BO 啥的也用不咋上,当然与数据库对应的POJO(或者是 model)那个是必需有的

表的优化

  • 当多个表的字段属性差不多的时候,我们可以将这几张表集中成一张表,这样对于我们进行不同数据的操作非常有利,就不需要进行多张表的分别 IO ,极大的提升效率,
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值