• 《编写可读代码的艺术》第3章 不会误解的名字


    1. Filter(condition)

        "filter"是个二义性单词,应避免使用。因为不清楚是应该满足condition,还是应该不满足condition,容易引起误解。

    2. Clip(text, length)

        Clip(text, length) //易产生歧义,不知道是保留前半部分还是后半部分

        替换为:

       Truncate(text, max_chars). // 缩短至max_chars长度

    3. 推荐使用max和min

        CART_TOO_BIG_LIMIT = 10 //产生歧义

        MAX_ITEMS_IN_CART = 10 //更好的变量名,表示包含10

    4. 范围

        start, stop   // 易产生歧义

        [first, last]    // 闭区间

        [first, last)    // 左闭右开区间, C++标准库中的用法

    5. 布尔值的命名

        bool read_password = true; // 歧义:已经读取了密码/需要读取密码?

        need_password

        user_is_authenticated          // is, has, can, or should这样的词可以使布尔值变得更准确

    6. 与使用者期望相匹配

        例如:get*() 通常应为轻量级访问

        getMean() 如果是需要遍历数据并计算中值,则应重命名为computeMean()

        例如:size() 通常应为轻量级访问,否则应使用countSize()或者countElements()

    总结:

        决定写一个名字之前最好,最好吹毛求疵一下。

  • 相关阅读:
    springboot+maven+thymeleaf配置实战demo
    报错AbstractStandardExpressionAttributeTagProcessor
    IllegalStateException: Unable to find a @SpringBootConfiguration
    Java装饰模式
    Java容器类解析
    jdk之object源码理解
    osx brew mysql
    java String[] 初始化
    date 常用
    mac mysql
  • 原文地址:https://www.cnblogs.com/yyqng/p/14215469.html
Copyright © 2020-2023  润新知