31 | 理论五:让你最快速地改善代码质量的20条编程规范(上)
王争
该思维导图由 AI 生成,仅供参考
前面我们讲了很多设计原则,后面还会讲到很多设计模式,利用好它们可以有效地改善代码质量。但是,这些知识的合理应用非常依赖个人经验,用不好有时候会适得其反。而我们接下来要讲的编码规范正好相反。编码规范大部分都简单明了,在代码细节方面,能立竿见影地改善质量。除此之外,我们前面也讲到,持续低层次、小规模重构依赖的基本上都是编码规范,这也是改善代码可读性的有效手段。
关于编码规范、如何编写可读代码,很多书籍已经讲得很好了,我在前面的加餐中也推荐过几本经典书籍。不过,这里我根据我自己的开发经验,总结罗列了 20 条我个人觉得最好用的编码规范。掌握这 20 条编码规范,能你最快速地改善代码质量。因为内容比较多,所以,我分为三节课来讲解,分别介绍编码规范的三个部分:命名与注释(Naming and Comments)、代码风格(Code Style)和编程技巧(Coding Tips)。
命名
大到项目名、模块名、包名、对外暴露的接口,小到类名、函数名、变量名、参数名,只要是做开发,我们就逃不过“起名字”这一关。命名的好坏,对于代码的可读性来说非常重要,甚至可以说是起决定性作用的。除此之外,命名能力也体现了一个程序员的基本编程素养。这也是我把“命名”放到第一个来讲解的原因。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文总结了编程规范中关于命名与注释、代码风格和编程技巧的重要内容。在命名方面,强调了命名的准确性和可读性,以及命名要符合项目的统一规范。在注释方面,指出了注释的目的是让代码更易于理解,内容应包括做什么、为什么、怎么做,以及对于复杂类和接口可能需要写明如何使用。此外,还讨论了注释数量的适度,以及如何通过好的命名、提炼函数、解释性变量和总结性注释来提高代码可读性。总的来说,这些编程规范可以帮助读者快速改善代码质量,提高代码的可读性和可维护性。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《设计模式之美》,新⼈⾸单¥98
《设计模式之美》,新⼈⾸单¥98
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(104)
- 最新
- 精选
- zyl什么时候开始 进入正题呀,前奏太长了
作者回复: 先从第一篇开始就是正题啊 😂 前面的比后面的更重要呢 建议你回过头去再看下前几篇文章
2020-01-131651 - 逍遥思在 User 类这样一个上下文中,我们没有在成员变量的命名中重复添加“user”这样一个前缀单词,而是直接命名为 name、password、avatarUrl。 但示例代码好像都带了 user 前缀?
作者回复: 这节课里的代码都没带吧
2020-01-1324 - JRich检验字符是否0-9,a-z那行代码可读性不高,可以抽成一个方法,通过注释理解具体含义
作者回复: 嗯嗯
2020-11-27 - 丨丨1 缺类注释 2 看团队英文水平
作者回复: 嗯嗯 ������
2020-11-26 - 林星宇我不明白为什么会问注释用英文 或者中文来写 这种问题。又不是国际化项目为什么用英文,就算国际化项目,中国公司做的为什么不能用中文?
作者回复: 都可以啊,用中文也没问题,只要公司达成一致就可以,别有的用中文,有的用英文
2020-07-20 - 堵车有没有相关的资料,能把开发中常用的缩写罗列出来?因为很多人都是乱用缩写,,,
作者回复: 这个真没有,也很难
2020-01-13 - liyghting我是用jdk1.8,commons-lang3-3.6测试的,比如abcd. 在判断是否全是小写的时候。有“.”的话,就返回false,不满足password contains only a~z,0~9,dot。是不是有问题啊 还有判断password contains only a~z,0~9,dot的if代码 非!少了扣号 论单元测试的重要性
作者回复: 嗯嗯 我改下
2020-01-13 - 牛顿的烈焰激光剑课堂讨论: 1. 关于 isValidPassword() 可读性优化: 示例代码中的单行注释已经把验证规则清楚列明,但是必须打开源代码才能看见。我认为可以在函数声明处使用文档注释(即多行注释)对规则进行描述,这样函数的使用者借助 IDE 的代码提示功能就能看到具体的规则,同时也为用工具生成的项目文档提供注释。 2. 关于注释用中文还是英文的问题:对于团队开发,如果有外国人当然要用英文;但是如果只有中国人,我认为最好用中文。首先是每个人的外语水平不一,外语水平好的看到别人的语法错误甚至连单词都拼错,真的很影响心情。对于外语水平不太好的,使用外语写注释不友好且心理压力大,甚至回过头再看都不知道自己当初想表达什么。团队中最重要的是相互合作和最后上线的产品,而不是相互折磨,如果要求使用英文注释会推高沟通成本,那就得不偿失。对于个人项目,选择中英注释均可,但应统一风格。我认为注释只是一个工具,用于降低沟通成本和提醒自己写代码时的思维逻辑和一些关键步骤,但是切不要对这个工具有过高的期望,譬如提高个人甚至团队的外语水平。2020-01-134172
- 白杨我们提倡面向离职写注释2020-03-299118
- 辣么大There are only two hard things in Computer Science: cache invalidation and naming things.-- Phil Karlton 命名达意、准确: 不知道如何命名,推荐:Codelf(变量命名神器) https://unbug.github.io/codelf/ Search over projects from Github, Bitbucket, Google Code, Codeplex, Sourceforge, Fedora Project, GitLab to find real-world usage variable names. 关于注释语言: 公司的项目看项目要求(中英文都可以) 自己的个人项目一定要用英文,因为一开始我就考虑到要做国际化的项目(目标是全球用户)。 如何写注释可以多看看JDK源码中的注释,能够学到很多东西。2020-01-13562
收起评论