本文记载我在软件工程实践过程中总结的经验

1、在生产环境为测试环境的凭证设置特殊报错

在实际开发过程中,我们可能会有各种各样的环境,这些环境可能会提供给业务方使用。我们的工程中经常会有权限校验操作,在测试环境为了方便可能会给业务方分配一个统一的凭证,而生产环境会分配单独的凭证。如果是这样,那么建议生产环境校验时为这个特殊凭证单独设置错误提示,以通知用户错误的将测试环境的凭证用于生产环境。

2、不要为pin等字段设置默认值

用户会使用pin,而有的时候我们会想要获取这些pin做日志等分析处理,如果获取不到这些pin应该使用null标记这些字段,而不是设置“unknown”等默认字段,因为客户可能会使用这些字段作为pin。

3、预防型捕获异常可以有,但是一定要在日志中指出是意料之外的异常

在业务导向比较强的代码中,可以在一些不必加try catch的地方显示捕获异常。因为一些代码在业务导向强的项目中属于边缘代码,比如埋点、日志等,对于一些业务比如个人实名来说这些代码可以失败但不能阻塞流程。预防性try catch能保证这部分代码不出问题,但是我无法保证同事或者其他中间件等