谷歌的代码规范化 (谷歌代码风格指南)

欢迎关注@程序员柠檬橙 回复「1024」获取海量编程学习资源!

怎么写好谷歌代码,谷歌全栈代码优化

这两天和一位大厂的朋友聊天,说起他们今年技术岗晋级答辩要增加代码走读环节,那该如何写出好看又好用的代码?

代码是程序员改变世界的工具,每个程序员都会写代码,但不一定能写出好代码。

如今的大型商业软件系统代码量巨大,早已不是凭借一人之力可以完成, 当然有些天才选手除外 ,比如Linux之父 Linus Torvalds 一人写了初代Linux内核,微信之父张小龙一人写了Foxmail邮箱,求伯君一人完成WPS1.0。

大部分程序员的工作是流水线形式的软件开发,每人负责开发大系统中的一个小模块,要么怎么会说大厂拧螺丝呢, 这时候编码规范在团队开发中就显得尤为重要 ,遵循代码规范开发,更容易写出可读性高、易维护的代码。

团队刚引入编码规范,为了适应规范可能需要额外的时间,如果规范的要求和成员平常的编码习惯不同,还可能会影响了开发效率,但和日后的收益比起来,这些阵痛都是暂时的。

统一使用一种风格编码,带来的后期收益是巨大的,这时即使看一份不是你写的程序代码,有统一的代码结构、变量命名、甚至注释风格,也非常容易理解。

打个比方来说,学 C++ 一定要看《Effective C++》,这本书就是 C++ 大师公开的最佳实践,讲了编写出优秀C++代码的55个建议。代码规范从某种程度上来说,是编程习惯的最佳实践,好的编码规范,让我们以最少踩坑、最少沟通成本的完成软件开发。

规范因团队和组织而异,我所有待过的几个公司,都有不同的代码规范,当然有些小公司直接参考了业界的规范,好的代码规范值得我们学习, 比如 Google 的开源项目代码规范

Google代码规范项目前包含了 C++\Object-C\Python\Shell\Javascript 这 5 种编程语言风格指南,可以先来看下目录。

怎么写好谷歌代码,谷歌全栈代码优化

关于C++的规范,也截取部分出来, 整体来看是比较细致,且有实践指导意义 ,比如对于头文件定义的约束:

所有头文件要能自给自足,用户和重构工具不需要为特别场合而包含额外头文件

怎么写好谷歌代码,谷歌全栈代码优化

头文件自包含

再比如,很多人不是很了解 C++ 的前置声明,我曾经就在知乎回答过类似的问题。这个规范不但解释了何为前置声明,还告诉你哪些情况下要用它,哪些情况下使用前置声明会带来的问题。

怎么写好谷歌代码,谷歌全栈代码优化

下图截取自 Python 编码规范:

怎么写好谷歌代码,谷歌全栈代码优化

Objective-C 部分编码规范:

怎么写好谷歌代码,谷歌全栈代码优化

shell 部分编码规范:

怎么写好谷歌代码,谷歌全栈代码优化

javascript 部分编码规范:

怎么写好谷歌代码,谷歌全栈代码优化

如你所见,谷歌的这份编码规范还是非常有参考价值的,分享给需要的同学, 助你码到成功

这份 Google 开源项目代码规范 PDF 版本,关注 @程序员柠檬橙 后私信回复「 002 」即可*载下**

读者福利

新年新气象,感谢各位读者朋友,一年以来对@程序员柠檬橙 的关注和支持!

发了年终奖,给大家发 3000 块钱开工红包,无套路,拼手气!目前参与的人还不多,赶紧来吧!新年给自己一个惊喜~

怎么写好谷歌代码,谷歌全栈代码优化

领取方式 :关注@程序员柠檬橙 后,私信发送关键词【 888 】参与即可

也可点击文末「了解更多」直达领取页面!

祝大家新年牛气冲天,转发文章牛气好运分享给更多小伙伴~

我是 @程序员柠檬橙 关注我,学习更多编程知识!如果觉得文章不错,点赞转发支持一下吧!

怎么写好谷歌代码,谷歌全栈代码优化