当前位置: 首页 > news >正文

《代码整洁之道》二之有意义的命名

1.有意义的命名

1.1 名副其实

取个好名字需要花时间,但是价值远超取名的时间,一旦发现更好的名称就换掉旧的。这么做,读你代码的人都会很开心。

变量名、方法名、类名称需要清晰的告诉别人含义,如果名称需要注释来补充,就是名不副实。

1.2 避免误导

避免使用与本意相悖的词

别用 accountList 来指一组账号,除非它真的是List类型,如果包纳账号的容器并非真的是个List,就会引起错误判断(即便容器就个 List ,最好也别在名称中写出容器类型名)。如果不是,则用accountGroup或者bunchOfAccounts,甚至 accounts 都会好一些。

误导名称真正可怕的例子是用小写字母l和大写字母O作为变量名,尤其在组合使用的时候,因为他们看起来非常像常量零和一。

1.3 做有意义的区分

以数字系列命名(a1、a2、…、aN)是依义命名的对立面。这样的名称纯属误导,完全没有提供正确的信息。

不要讲废话:Variable 一词永远不应当出现在变量命名中,Table 一词永远不应当出现在表名中。 NameString 会比 Name 好吗?

变量 moneyAmount 和 money 没区别,customerInfo 与 customer 没区别。要区分名称,就要以读者能鉴别不同之处的方式来区分。

1.4 使用读得出来的名称

人类擅长记忆和使用单词。如果名称读不出来,讨论的时候就会像个傻鸟。

不要傻乎乎的自造词,使用非恰当的英语词。

1.5 使用可搜索的名称

找WORK_DAYS_PER_WEEK比数字5好找的多。

1.6 类名

类名和对象名应该是名词或者名词短语,不应当是动词。

1.7 方法名

方法名应当是动词或者动词短语

1.8 每个概念对应一个词

给每个抽象概念选一个词,一以贯之。

用了 controller 来表示控制层,就不要用 manager。

不要使用 get 来给多个类中的同种方法命名。

1.9 别用双关语

不要将统一单词用作不同目的。

比如用 add 来计算两个值相加,现在有个新方法要把某一个元素添加进集合,如果也用 add 就是双关语。

http://www.lryc.cn/news/21440.html

相关文章:

  • 天气预测demo
  • HDMI协议介绍(四)--Video
  • 微信授权登录流程以及公众号配置方法(golang后端)
  • 【软件测试面试题】大厂头条:如何定位bug?实际案例拿offer还不简单......
  • kubeconfig生成最高权限的token
  • Android 9.0 蓝牙去掉传输文件的功能
  • C语言指针易错点—字符数组与字符指针
  • Yolov3,v4,v5区别
  • 基于Appium+WinAppDriver+Python的winUI3应用的自动化框架搭建分享(一)环境配置
  • 使用docker安装RocketMQ
  • 【FPGA仿真】Matlab生成二进制、十六进制的txt数据以及Vivado读取二进制、十六进制数据并将结果以txt格式保存
  • 【第四章 IOC操作bean管理(基于注解方式创建对象,注入属性),完全注解开发】
  • 【手把手一起学习】(六) Altium Designer 20 STM32核心板Demo----PCB设计
  • 【蓝桥杯集训·周赛】AcWing 第92场周赛
  • 编程参考 - GCC中的Basic ASM
  • 软考中级-操作系统
  • MYD-Y6ULL开发笔记
  • 三天吃透Java虚拟机面试八股文
  • Spring Cloud Alibaba全家桶(二)——微服务组件Nacos注册中心
  • 命令执行漏洞 | iwebsec
  • 2023.02.26 学习周报
  • 局域网实现PC、Pad、Android互联
  • AC自动机
  • git入门
  • RK3568编译Android11和目录讲解
  • java泛型学习篇(二)
  • Java基础
  • 骨骼控制(一)——动画动态节点(AnimDynamics)
  • Linux系统下搭建maven环境
  • English Learning - L2 语音作业打卡 Day3 2023.2.23 周四