很多同学戏谑“把代码写烂点,你在公司就不可代替了”。其实大家都知道不太可能。曾经胖哥和同事花了一周时间只为重构了一个极其复杂简直是混淆代码的方法,所以不要低估公司重构代码的决心。那么如何在项目中避免一些质量比较低的代码。
Pull Request
其实我们可以借鉴开源项目的代码管理。开源项目除了通过声明一些规约来约束贡献者之外,还使用Pull Request的方式来协作。
![](https://img-blog.csdnimg.cn/img_convert/9ab27d5a22793bbe5acd3554fc9e0324.png)
代码贡献者需要发起合并的请求,项目的管理人员会指定审查人员来对合并请求的代码进行Review。
![](https://img-blog.csdnimg.cn/img_convert/193693d2f2e2a2c0619db483aba4406f.png)
如果发现不合理的地方会标记出来反馈给贡献者;同时测试人员也会对代码进行测试。如果代码有质量问题就会被打回去完善,直到合规才能被合并,所以治疗“烂”代码也是有办法的。
质量检查工具
除了通过协作方式以外,我们还可以借助于一些工具来检测代码的质量。人和动物最大的区别就是会使用工具,逐行去Review是很费力费神的,因此一些静态代码检测工具就诞生了,比如findbugs、checkstyle等工具,来纠正我们的坏习惯,后来又出现了代码质量管理平台来保证大型项目的代码质量,例如熟知的SonarQube,甚至代码质量检查已经嵌入了持续集成流程中,当开发者发起提交时会对代码中的缺陷进行跟踪报告。
![](https://img-blog.csdnimg.cn/img_convert/66570c05e6118081f7a821177718e9a7.png)
有各种指标来跟踪你的代码质量,你还想提交“烂”代码?
如何提高代码质量
经常有人问我这个问题,提升的方法只有一个就是多写。很多同学喜欢去看视频、看教程,但是就是不肯动手去写一个 DEMO。一定要多写多分析,写完用工具扫缺陷,反复提炼你的代码,努力提高自己代码的层次感和可读性,写出高质量的代码只是时间问题。
![](https://img-blog.csdnimg.cn/img_convert/c6cc435c9fc8d037cfefeb03ea7fefe8.png)
![](https://img-blog.csdnimg.cn/img_convert/f98e3722682465db5fa78fe1185391c4.png)
![](https://img-blog.csdnimg.cn/img_convert/cd26ba3bab52d3a670bf7f07d1b81a85.png)