• 如何给变量取个简短且无歧义的名字(精减版)


    1 为什么

    • 长的类名会使开发者不易声明该类型的变量。
    • 长的方法命名会使它变得晦涩难懂.
    • 长的变量命名不利于代码重用,导致过长的方法链。

    2 怎么解决

    2.1 目标

    • 清晰:你要知道该命名与什么有关
    • 精确:你要知道该命名与什么无关

    2.2 原则

    一个好的命名能够在阅读者的脑海中描画出一幅图画。而将某变量命名为”manager”并不能向读者传达任何有关该变量是做什么的信息. 它是用来做绩效评估的吗? 它是管理加薪的吗?

    (a) 命名中无需含有表示变量或参数类型的单词

    • 类型说明加入到变量名中是多余的. 我们应该舍弃匈牙利命名法
    • 对于集合来说,最好使用名词的复数形式来描述其内容, 而不是使用名词的单数形式来描述. 如果开发者更在乎集合中存储的内容, 那么变量命名应当反映这一点。
    • 如果在之后的开发中觉得该命名会造成冲突或不明确,可以添加些修饰词来完善它。反之,如果一开始就取了一个很长的命名,你是不可能在之后重新回来简化它的

    (b) 省略命名中可以从上下文获取的单词

    • 类中的方法/属性和方法中的变量,都是存在在上下文中的,无需重复。
    • 一个命名嵌套的层次越多, 它就有更多的相关的上下文,也就更简短。换句话说,一个变量的作用域越小,命名就越短。

    (c) 省略命名中无任何含义的单词

    • 含无任何含义的单词的命名,一些开发者喜欢在命名中添加一些看起来有点严肃的单词。我猜可能他们觉得这样做可以让他们的代码显得重要,或者说让他们觉得自己更重要。
    • 有一些词语并没有实际意义,只是一些套话。比如:data, state, amount, value, manager, engine, object, entity和instance。

    3 参考链接

    1. 参考链接
  • 相关阅读:
    四层、七层负载均衡的区别
    confd+etcd实现高可用自动发现
    从零开始搭建etcd分布式存储系统+web管理界面
    从零开始搭建Prometheus自动监控报警系统
    tcpdump工具使用说明
    Nginx的负载均衡
    Nginx的正向代理与反向代理详解
    linux集群自动化搭建(生成密钥对+分发公钥+远程批量执行脚本)
    linux文件权限总结(创建root不可以删除文件、只可追加的日志文件等)
    前端技巧备忘
  • 原文地址:https://www.cnblogs.com/htoooth/p/6403687.html
Copyright © 2020-2023  润新知