Google 开源的这份工程实践,GitHub标星14.4k,果然大厂出品,必是精品!

点击上方“码农突围”,马上关注

这里是码农充电第一站,回复“666”,获取一份专属大礼包

真爱,请设置“星标”或点个“在看


作者:GG哥,来源:GitHub爱好者社区

Hello,大家好,我是GG哥!

今天给大家分享的Google公司开源的工程实践,英文名:Google's Engineering Practices documentation。没错是全英文的。那么有没有中文版呢?可以直接拉到文末。

英文版

中文翻译版

很多公司都要求项目做CodeReview,但很多人第一次CodeReview往往不知道该如何做,也不知道为什么去做。笔者参加过几个项目的CodeReview,发现一些共性问题:

  • 有时候参与Review的人太多了,意见太分散,Review时间拉的很长,发现问题效率低;

  • 有时候会发现一个CodeReview时间很长,参与者会觉得煎熬和浪费时间;

  • 有时候不太了解对方评审的东西,没法跟上大家的思路,影响效率;

  • 有时候走查的代码量太大了,无法做到详细走查;
    有时候会看到有些人无所事事、精神不集中、不发言,影响效果。

Google在这篇文档中,详细概述了代码Reviewer和代码Developer需要考虑的点。

这篇文档主要包含以下文档:

  • 代码Reviewer指南

  • 代码Developer指南

比如我们需要在代码的可读性上注意,如果代码的可读性强,那么维护起来也就方便很多;一个好的代码规范和编码风格会节省大家对代码的理解时间,减少维护成本;虽然我们有编程规范检查工具,但有些内容检查不出来,是需要靠大家去规范的。

  • 关注代码注释:我们在编写函数和进行逻辑判断的时候最好要标注一下这个函数或者这段判断是用来做什么的;做了这种注释的好处,一来当别人阅读这段代码的时候看到你的注释以后就会根据你的思路快速理解代码,甚至不阅读直接跳过;二来防止自己由于长时间不阅读代码而忘记这段代码的用途。

  • 关注命名规范:虽然我们有自己的编码规范,但是这种规范只是限制了使用驼峰命名法还是其他命名法;而好的命名风格应该是看到变量或者函数名字就能“望文生义”,毕竟我们不能把自己写的所有代码都做注释。

  • 关注重复代码:如果出现大量的重复性代码,要考虑将这些代码抽象出公用函数,以减少代码量并增强代码可读性。

  • 关注繁琐的逻辑:如果一个简单的功能却对应大篇幅的代码,要考虑一下是不是有比较简单的实现方式,因为过于复杂的代码会给后来者的维护带来麻烦;如果没有简略的办法,一定要把注释写好

由于内容较多,不一一介绍,大家可以下载后阅读。

目前 Google 的这份文档已正式开源到了 GitHub 上,并且还基于 GitHub Pages 构建了文档的静态站点。此外,英文不太好的同学也不用过于担心,国内有开发者已将这份指南翻译成了中文,下面是该项目的完整链接,感兴趣的同学可以看一下。

中文版:https://jimmysong.io/eng-practices/

英文版:https://google.github.io/eng-practices/

GitHub 地址:https://github.com/google/eng-practices


重磅!鱼哥微信好友坑位限时开放啦!

福利来啦!扫码直接加鱼哥微信号,送你一份刷题指南和面试手册,不仅可以围观鱼哥平时所思和复盘的内容。还可以帮你免费内推大厂,技术交流,一起探索职场突围,收入突围,技术突围。一定要备注:开发方向+地点+学校/公司+昵称(如Java开发+上海+拼夕夕+猴子)

▲长按加鱼哥微信,赶紧上车

推荐阅读

•  Java 处理 Exception 的 9 个最佳实践,你做对了吗?

•  Google 为什么把几十亿行代码放在一个库

•  点赞功能,用 MySQL 还是 Redis ?

•  终于找到一款神器,竟然可以让SpringBoot 不再需要Controller、Service、DAO、Mapper!

•  这几个私藏的在线工具网站!真是相见恨晚!让码农彻底解放双手!

•  再见,JSP!!!

最后推荐一个不错公众号,由一群志同道合的BAT一线码农业余创建的,带你发现Github上好玩有趣的项目,如果你也对GitHub开源项目推荐感兴趣,也可以在这个公号后台留言一起入伙哦!

如有收获,点个在看,诚挚感谢

最近面试BAT,整理一份面试资料《Java面试BAT通关手册》,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。
获取方式:点“在看”,关注公众号并回复 BAT 领取,更多内容陆续奉上。

明天见(。・ω・。)ノ♡

猜你喜欢

转载自blog.csdn.net/Ch97CKd/article/details/106678062