• 《编写可读代码的艺术》第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()

    总结:

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

  • 相关阅读:
    强化训练1
    强化训练2
    变量的本质
    抽象层
    安装vs2015
    解决思路
    分析栈的缺点
    (转)使用yuicompressor-maven-plugin压缩js及css文件(二)
    (转)yuicompressor 与 maven结合,打包,压缩js,css (一)
    (转)Properties Editor为你解除通过native2ascii进行Unicode转码的烦恼
  • 原文地址:https://www.cnblogs.com/yyqng/p/14215469.html
Copyright © 2020-2023  润新知