尽可能早的校验入参是否为null,以及最好使用断言校验

354 阅读1分钟

为什么要尽可能早的校验入参是否为null?

因为有问题,要尽可能早的暴露出来,即时阻断,快速失败。而不是执行无谓的代码,然后在后面去校验,最后还是失败了。最重要的是,如果没有校验,代码就异常了。

如何校验?最好使用断言。

为什么要使用断言?因为主逻辑代码越简单越好。

或者使用框架字段的注解去校验

比如dubbo接口的入参校验。

或者spring接口(比如控制器类的注解)的入参校验。

开源框架spring

只需要一行代码,使得主代码更简单。不然入参校验一多的话,到处都是检验的代码。

如果为null,就排除非法参数异常。