亦无所思-212:
做思考系统分享图的时候,右下角的二维码是实时生成的,每个分享的图都不大一样。
实现的时候,我和其他图片按一样的方式处理,可是别的图片显示正常,就是这个二维码总是显示不出来。
一开始我以为是我生成二维码的方式不对,换了不同实现方案后,还是一样的问题。
最后把过程日志打印出来,才发现不是功能问题,而是逻辑问题。
实时生成二维码,和实时生成分享图,这两个之间有时序性要求。
虽然我调用二维码生成的方法在前面,但它是异步操作,并不会阻塞后续执行,现在出现的问题,就是分享图出来后,二维码才生成,所以分享图就没有显示二维码图片了。
不管是前端还是后端,现在默认都是使用异步,好处显而易见。
不过从质量保证的角度看,也同样就产生了类似有时序要求的逻辑 bug。
而且这种问题很不好定位,因为大家主要关注是当前功能实现的正确性,忽略了框架设计的系统性影响。
启发:
1、所有的事情都有利有弊,如果能清晰的知道具体的利弊,对自己的分析判断都非常有益。
2、除了猜测,还应该验证猜测的正确性,不然就是瞎忙活了。