读《Software Engineering at Google》(20)
🤔☕️🤔☕️🤔
读《Software Engineering at Google》(20)—— Static Analysis
📖:@Google,静态分析工具的第一质量属性是“扩展性(Scalability)”,首先不能因工具而减慢软件开发过程,依然要处理谷歌数以十亿计的代码,所以分片和增量分析,就成为其必备特性。(🤔:此次扩展性是直面翻译,实际上用伸缩性更贴切,这里既要变大,还得缩小,能大能小更体现出伸缩的特点,而扩展的特点往往只会想到大的方向,而忽视小的方向。)
🤔:一直令我困惑不解的,关于静态分析,就是为何这件事情,不在编译和链接的过程里,随着告警消息输出,而非得闹出个专用工具。或者说,是否把编译器的告警选项调到最高,所有的 WARNING 必须当作 ERROR 处理干净,那么静态分析工具,就是个受益写不满页眉的玩具而已?现在没有答案,但是我隐隐相信自己的这个判断。
📖:@Google,为了让静态分析真有效,谷歌使出的招数:【1】聚焦让开发开心;【2】融入到核心开发流,集成到代码评审工具,作为评审建议一部分;【3】鼓励大家参与,来贡献新规则工具;
🤔:静态分析,在我的经历里,从来没有顺畅过,更别说开心。为啥谷歌都是做这些貌似虚头八脑的事情,动不动就要让工程师们开心。懂人性,这是我找到,并且我认为正确的答案。
—— By 术子米德 @2022.04.28
版权声明: 本文为 InfoQ 作者【术子米德】的原创文章。
原文链接:【http://xie.infoq.cn/article/c2cdc7ff6ae21b53e68232660】。文章转载请联系作者。
评论