Python 核心技术与实战
景霄
Facebook 资深工程师
114324 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 47 讲
开篇词 (1讲)
Python 核心技术与实战
15
15
1.0x
00:00/00:00
登录|注册

26 | 活都来不及干了,还有空注意代码风格?!

遍历方式的选择
隐式布尔转换
is 和 == 的使用区别
遍历方式的选择
is 和 == 的使用区别
避免危险的编程风格
避免过度简化代码
import对象规范
命名原则
强制静态或者动态linter
强制代码评审
机器的体验
编程者的体验
优化团队阅读的体验
团队工作流程变化
强制执行代码规范
选择/制定适合公司/团队的规范
阅读者的体验 >> 编程者的体验 >> 机器的体验
整合进开发流程的自动化工具
统一的编程规范能提高开发效率
编程规范的重要性

该思维导图由 AI 生成,仅供参考

你好,我是蔡元楠,是极客时间《大规模数据处理实战》的作者。今天是我第二次受邀来我们专栏分享了,很高兴再次见到你。今天我分享的主题是:活都来不及干了,还有空注意代码风格吗?!
许多来 Google 参观的人,用完洗手间后,都会惊奇而略带羞涩地问:“你们马桶前面的门上,贴着的 Python 编程规范,是用来搞笑的吗?”
这事儿还真不是搞笑,Google 对编码规范的要求极其严格。今天,我们就来聊聊编程规范这件事儿。
对于编程规范(style guide) 的认知,很多人可能只停留在第一阶段:知道编程规范有用,整个公司都要求使用驼峰式命名。而后面的阶段,比如为什么和怎么做,就并不了解了。
但在 Google,对于编程规范的信仰,可能超出很多人的想象,我给你简单介绍几点。
每一个语言都有专门的委员会(Style Committee)制定全公司强制的编程规范,和负责在编程风格争议时的仲裁人(Style Arbiters)。
在每个语言相应的编程规范群里,每天都有大量的讨论和辩论。新达成的共识会被写出“大字报”张贴在厕所里,以至于每个人甚至来访者都能用坐着的时候那零碎的 5 分钟阅读。
每一个代码提交,类似于 Git 里 diff 的概念,都需要至少两次代码评审(code review),一次针对业务逻辑,一次针对可读性(readability review)。所谓的可读性评审,着重在代码风格规范上。只有通过考核的人,才能够成为可读性评审人(readability reviewer)。
有大量的开发自动化工具,确保以上的准则得到强制实施。例如,代码提交前会有 linter 做静态规则检查,不通过是无法提交代码的。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

编程规范对于代码质量和团队协作至关重要。本文介绍了Google对编程规范的严格要求,强调了统一的编程规范能提高开发效率、优化阅读体验、减少错误和提高代码可读性。作者通过举例说明了编程规范对阅读者、编程者和机器的重要性,尤其强调了编程规范对于提高开发效率的重要性。此外,文章还介绍了Python编程规范的重要性,并举例说明了一些常见的编程规范,如命名原则、import规范等。最后,作者强调了编程规范对于提高代码安全性和效率的重要性,以及如何通过编程规范来避免一些常见的错误。整体来说,本文通过介绍Google对编程规范的严格要求和Python编程规范的重要性,强调了编程规范对于提高代码质量和团队协作的重要性。文章还分享了一些自动化代码风格检查的切实方法,如强制代码评审和强制静态或者动态linter,以及如何将编程规范整合进开发流程。通过本文,读者能够全面了解编程规范的重要性,以及如何在实际工作中应用和执行编程规范,从而提高代码质量和团队协作效率。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 核心技术与实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(34)

  • 最新
  • 精选
  • lipan
    以前在小公司,996, 活都来不及干了,还有空注意代码风格。全局变量满天飞。

    作者回复: 哈哈,代码风格一定要注意啊,这个很重要。如果实在任务重,单元测试可以少写一点,但是代码风格千万要规范,否则后面维护起来很难

    2019-07-08
    2
    19
  • catshitfive
    最讨厌两件事儿: 1.码代码的时候写注释 2.接手别人代码没注释
    2019-07-08
    4
    88
  • 一期一会
    写代码不写注释。过了半年以上有事再去读代码,自己也不知道是怎么回事的人举个手
    2019-08-11
    65
  • 小侠龙旋风
    心中默念三遍:当和 None 比较时候永远使用 is。
    2019-07-10
    36
  • 一叶知秋
    个人没经历过,但是听说过: “因代码不规范、使用git push -f,码农枪击4名同事,一人情况危急”
    2019-07-08
    1
    22
  • 奥特虾不会写代码
    接手了离职同事留下来的代码,很多变量的命名都是无意义的单词+数字,例如data1、data2这种,看得我十分痛苦
    2019-07-08
    19
  • Lonely绿豆蛙
    代码其实归根结底是写给人看的,是程序员之间沟通交流的语言,因此写作风格需要统一规范而不提倡个性化,就像提倡工作中使用普通话而非方言。
    2020-02-07
    9
  • 吴月月鸟
    https://blog.csdn.net/FU250/article/details/95633286 git+pylint实现python提交代码格式校验
    2019-07-12
    1
    5
  • Breathless
    if not salary: if salary is not None: 怎么怪怪的?
    2019-09-12
    2
    3
  • Z_ying
    dict.items()推荐使用吗 它是使用默认的iter还是另外使用临时内存吗
    2019-08-02
    3
收起评论
显示
设置
留言
34
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部