京口新闻网

2016.8.12  星期五

代码质量管控都有哪些阶段

对于程序员来说,代码质量的优化和性能调优是一个永无止境的工作项目,而今天我们就通过案例分析来了解一下,代码质量管控都有哪些阶段。代码质量管控都有哪些阶段我把代码质量管控通常需要经历的四个阶段,称之为“四个现代化”:规范化-建立代码规范与CodeReview制度自动化-使用工具自动检查代码质量流程化-将代码质量检查与代码流动过程绑定中心化-以团队整体为视角,集中管理代码规范,并实现质量状况透明化阶段一:规范化保障代码质量的基础是建立团队的代码规范,通常包括:风格规范-缩进、换行、大小写等风格问题实践规范-规避一些常见的隐患,或者针对特定问题的佳实践业务规范-与业务有关的特殊要求,比如文案中的关键词团队的代码规范通常以文档的形式存在,供新人们学习。但文档这种形式常见的情况就是新人看过之后就不再回顾了,也很难对实际写代码形成真正的约束。在规范的基础上,要通过CodeReview将规范落地。CodeReview中大家可以对代码质量问题进行交流,并且相互监督,形成团队重视代码的习惯。关于CodeReview可以参考另一篇文章:CodeReview体系与团队文化阶段二:自动化自动化是指在代码规范的基础上,使用自动化工具进行质量检查,通常包括:代码规范检查-包括风格规范、实践规范、业务规范重复率-重复出现的代码区块占比,通常要求在5%以下复杂度-总行数,模块大小,循环复杂度等检查覆盖度-经过检查的行数占代码库总行数的比例自动化质量检查可以覆盖多数常见问题,能够提升开发效率,也可以降低人工CodeReview的成本。自动化检查工具的规则集与代码规范直接对应。通过编辑器插件,在写代码的时候直接给出检查结果。到这个阶段,团队的代码规范文档已经不再需要陈述各种细节,开发者可以直接通过查看自动化工具的规则集来了解代码规范。阶段三:流程化流程化的意思是将自动化代码质量检查和CodeReview与代码流动的过程绑定,从而保证所有上线的代码都经过机器与人工多个环节的检查。代码流动过程:执行自动化代码质量检查的时机:编辑时-使用编辑器插件,实时运行质量检查构建时-在本地或者开发机的构建脚本中运行质量检查提交时-利用GitHooks,提交代码或者生成PullRequest时运行质量检查发布时-在发布脚本中再做一次质量检查,通常与自动化测试放在一起质量检查与代码流动绑定后的效果:除了人工的CodeReview之外,各个环节的代码质量检查都是机器自动运行的,不会给开发者带来额外的成本。阶段四:中心化当团队规模越来越大,项目越来越多时,代码质量管控就会面临以下问题:不同项目使用的代码规范不一样部分项目由于放松要求,没有接入质量检查,或者存在大量未修复的缺陷无法从团队整体层面上体现各个项目的质量状况对比为了应对以上问题,需要建设中心化的代码质量管控体系,要点包括:代码规范统一管理。使用Git或者NPM包管理自动化代码质量检查的规则集,自动安装,不在本地写规则。一个团队、一类项目、一套规则。使用统一的持续集成服务。质量检查不通过的项目不能上线。建立代码质量评分制度。让项目与项目之间能够横向对比,项目自身能够纵向对比,并且进行汇总反馈。总结在面临业务压力时,人们通常会倾向于通过增加人力来缓解业务压力。但从系统整体的角度来看,人力增加会造成代码质量变差,开发效率下降,从而再度增大业务压力。这种代码质量越来越差的循环,是熵增定律在软件工程领域的生动体现。为了抑制这种循环,我们需要有意识地投入资源来建设代码质量的管控体系。这个过程分为四个阶段:规范化,自动化,流程化,中心化。每个阶段都有不同关注的要点。【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。

上一篇:软件测试管理都有哪些工作职责
下一篇:没有了