面向亿行 C/C++ 代码的静态分析系统设计及实践-肖枭合作创办源伞科技,致力于推动静态 分析技术在企业中的应用 目录 代码质量管理是个大问题 静态分析+代码评审的实践 学习和强调,红线和惩罚,100%的测试 覆盖率,和事后复盘并不够 有经验的程序员也会犯错 对代码提要求很难监督落实 测试更多是验证功能,很难检测编码缺陷 代码的快速变化使质量更难管 生产质量是责任 靠运维和事后复盘善后够吗? 静态分析工具:半智能的代码分析机器人 自动化工具+流程才是未来 Bug! Thx! Bug! 投入大 KPI不痛不痒 使用主体和责任主体不一致 一步登天想要终极AI 代码质量改进工具、流程落地难 Bug! No Thx! DevOps: 代码质量责任应该左移 设计 代码 开发 代码 评审 入库 测试 发布 1. 非研发人员主导,沟通成本高,推动修复周期长 2. 很难形成标准推动研发实施 3 挑战:超大规模代码仓库 项目平均40分钟单机编译时间 项目平均编译代码量超百万行 编译的价值 C/C++代码逻辑受编 译参数深度控制 源代码索引和统计 提升开源静态分析工 具分析质量 提高分析质量 测试项目 glog (谷歌的日志项目), 17个源文件。 cppcheck不带编译分析: 111个分析报告 cppcheck带编译分析: 280个分析报告 1110 码力 | 39 页 | 6.88 MB | 1 年前3
现代C++ 教程:高速上手C++11/14/17/20思考主要吸收自《Effective Modern C++》和 《C++ 风格指南》。在这篇附录里将简单讨论、并使用实 际例子来阐明的方法,介绍一些笔者个人的、不是随处可见的、非常识性的最佳实践,并如何保证代码 的整体质量。 常用工具 TODO: 代码风格 TODO: 整体性能 TODO: 代码安全 TODO: 可维护性 TODO: 82 可移植性 附录 2:现代 C++ 的最佳实践 可移植性0 码力 | 83 页 | 2.42 MB | 1 年前3
Hello 算法 1.0.0b1 C++版同学强烈推 荐这本著作,包括中文版、英文版、李沐老师 bilibili 主页。 在写作过程中,我阅读了许多数据结构与算法的教材与文章,这些著作为本书作出了很好的榜样,保证了本书 内容的正确性与质量,感谢前辈们的精彩创作! 感谢父母,你们一贯的支持与鼓励给了我自由度来做这些有趣的事。 0. 写在前面 hello‑algo.com 3 0.2. 如何使用本书 建议通读本节内容,以获取最佳阅读体验。0 码力 | 187 页 | 14.71 MB | 1 年前3
Hello 算法 1.0.0b2 C++版同学强烈推 荐这本著作,包括中文版、英文版、李沐老师 bilibili 主页。 在写作过程中,我阅读了许多数据结构与算法的教材与文章,这些著作为本书作出了很好的榜样,保证了本书 内容的正确性与质量,感谢各位老师与前辈的精彩创作! 感谢父母,你们一贯的支持与鼓励给了我自由度来做这些有趣的事。 0. 写在前面 hello‑algo.com 3 0.2. 如何使用本书 建议通读本节内容,以获取最佳阅读体验。0 码力 | 197 页 | 15.72 MB | 1 年前3
Hello 算法 1.2.0 简体中文 C++ 版如果把具体的工作技能比作是武功的“招式”的话,那么基础科目应该更像是“内功”。 我认为学算法(以及其他基础科目)的意义不是在于在工作中从零实现它,而是基于学到的知识,在解决问 题时能够作出专业的反应和判断,从而提升工作的整体质量。举一个简单例子,每种编程语言都内置了排序 函数: ‧ 如果我们没有学过数据结构与算法,那么给定任何数据,我们可能都塞给这个排序函数去做了。运行顺 畅、性能不错,看上去并没有什么问题。 ‧0 码力 | 379 页 | 18.48 MB | 11 月前3
《深入浅出MFC》2/e籍多是翻译居多其中品质良莠不齐,你的作品尤其难能可贵。现今我仍然有时会去阅读专业 期刊或者杂志,但碍于毕竟不是信息教育训练出身,有时会抓不住重点,甚者不求甚解。这 是我觉得遗憾之处。但读你的作品让我在质量之间都获得了相当的进步,且读来相当轻松自 然。你的序言中提到欢迎读者的反应,这也是这封mail 的动机。我想好的作家需要我们的鼓 励,当然也希望能从你处获得更多的新知。谢谢。 大陆"BaiLu"0 码力 | 1009 页 | 11.08 MB | 1 年前3
共 6 条
- 1













