Google 是如何审批20亿行代码的?coding style 真的很重要!

专栏 | 九章算法
网址 | www.jiuzhang.comcss

有些人以为,代码只要写出来了,程序跑经过了就能够了,为何要浪费时间去约束人家怎么写代码呢。可是,现实工做中,咱们发现,很多人就是由于代码风格不佳,被挂掉了面试,或者出现团队协做问题。html

为何代码风格这么重要呢?java

以Google为例,谷歌的代码库是向全公司的全部程序猿的,全部的程序猿均可以看到公司全部的代码。甚至是上古大牛jeff dean亲手写的代码,好比Map Reduce,GFS,Bigtable的源码。git

在谷歌的代码库里,至少有20亿行代码。如此庞大的代码库,万万千千的程序员都要来看,若是没有统一的代码风格,阅读起来是至关困难的。所以,在谷歌,全部的要提交的代码都须要通过批阅,未经批阅是不可能交到代码库里面的。程序员

所以,Google的代码库中,每一级的文件都有相应的文件主,正是由这些文件主来负责管理本文件的代码规范。程序猿在提交代码的时候,必须在审批者里面加上代码全部文件的文件主批阅。由文件主负责批阅这次交的代码改动符合整个文件的代码书写规范。angularjs

文件主是如何审阅这些代码的呢?其中代码的书写规范,是尤为重要的审阅内容。包括每个小空格,标点,对齐方式,都必须遵循Google的内部书写代码的风格规则。以此保证代码符合Google统一的格式。因此若是你还在哀怨算法班老师在课堂上给你指出的“不要用Tab, 要用空格”,“变量名后面要有空格”等代码风格规范,并且不能很好的作到这些基本的代码风格准则,那么你不只会在工做中遇到和同事的沟通、协做障碍,并且你有很大的可能由于代码风格不佳而没法经过面试github

Google的代码风格标准是给全部程序员的标准,任何人写的代码,若是代码风格有问题,别人均可以要求你修改。要知道,每次的代码提交,系统都会发邮件抄送给整个团队。这样作的目的是保证团队的全部人知道每次代码修改缘由,保证团队代码符合相同的规范面试

下面我给出Google官方几种代码的Coding Style Guide:算法

C++ Style Guide
Objective-C Style Guide
Java Style Guide
Python Style Guide
R Style Guide
Shell Style Guide
HTML/CSS Style Guide
JavaScript Style Guide
AngularJS Style Guide
Common Lisp Style Guide
Vimscript Style Guide
XML Document Format Style Guide shell


欢迎关注个人微信公众号:九章算法(ninechapter)。
精英程序员交流社区,按期发布面试题、面试技巧、求职信息等

九章算法,IT教育领域的深耕者
相关文章
相关标签/搜索