ESLint JSCS JSHint 等代码分析工具在开源界早已遍地开花,深入人心。这些工具的使用,在很大程度上保证了在N多开发人员共同为此项目贡献代码的时候,代码风格能一直保持基本一致。
痛点难点:
一、如何说服开发人员阅读错误报告?
工作中有很多开发人员,双眼是自带英文过滤功能的,命令行控制台下的大段大段英文对他们来说,等于什么都没有出现。
二、如何说服开发者改其代码?
JSHint只是告诉开发者,你的代码这里有错误,但是没有告诉开发者,为什么这样写有问题,该怎么修正这个问题。
三、带来的额外工作量。
每当需要对已有的旧代码进行修改时,JSHint要求我们修复所有文件内的错误,这时开发人员的工作量就会成倍增长。
四、带来的风险。
早已上线,并且运行了一段时间的代码,按照JSHint的要求修复后,没有重新进行测试流程,这将带来潜在的隐患。
解决方法:
一、错误信息的本地化
jshint错误,我将在错误报告中加入中文提示信息。eslint错误,我将在错误报告中加入中文文档链接。
二、git代码库钩子和CI
CI服务器上将运行eslint,开发人员所提交的分支,必须通过eslint,才允许合并到主干分支。在每个开发人员的电脑上,都安装git钩子,不通过eslint不能提交代码。
三、基于作者的错误报告过滤
过滤错误报告,找到每一个错误所对应的代码行。分析这行代码的作者。如果这行代码的作者与当前正在提交的用户无关,那么将这个错误降级为警告。
四、代码审查的范围缩小
针对每一次提交,每次审查的范围,缩小为仅审查需要提交的文件;针对每一个分支,仅审查当前分支与主干分之对比后有差异的文件。
相关资讯
-
基于Unity3D的web三维可视化
2021/3/16 8:42:12
-
经常帮一些同学 One-on-One 地解决问题,在看部分同学使用 VS Code 的时候,有些蹩脚,实际上一些有用的技巧能够提高我们的日常工作效率。一、重构代码VS Code 提供了一些快速重构代码的操作,例如:将一整段代码提取为函数:选择要提取的源代码片段,然后单击做成槽中的灯泡查…
2020/12/24 13:21:11
共有访客发表了评论
网友评论