美文网首页
代码应当易于理解

代码应当易于理解

作者: Sunsol | 来源:发表于2017-07-06 19:09 被阅读0次

    大多数程序员依靠直觉和灵感来决定如何编程。我们都知道这样的代码:

        for (Node* node = list->head; node != NULL; node = node->next)
            Print(node->data);
    

    比下面的代码好:

        Node* node = list->head;
        if (node == NULL) return;
    
        while (node->next != NULL) {
            Print(node->data);
            node = node->next;
        }
        if (node != NULL) Print(node->data);
    

    (尽管两个例子的行为完全一样)

    但很多时候这个选择会更艰难。例如,这段代码:

        return exponent >= 0 ? mantissa * (1 << exponent) : mantissa / (1 << -exponent);
    

    它比下面这段要好一些还是差一些?

        if (exponent >= 0) {
            return mantissa * (1 << exponent)
        } else {
            return mantissa / (1 << -exponent);
        }
    

    很显然,第一个例子虽然是一行代码,但是没有下边这个例子清晰可读。

    可读性的关键思想是:代码的写法应当使别人理解它所需的时间最小化。
    代码好不好不是说代码量越小越好,也不是说使用的方法越高级越好,而是别人理解它所使用的时间越短越好。

    如果你写了一些不容易理解的代码,这样别人就会很费力的才能看明白,当然,等过一段时间之后,你自己也会很费解。

    相关文章

      网友评论

          本文标题:代码应当易于理解

          本文链接:https://www.haomeiwen.com/subject/ubhkhxtx.html