美文网首页
《Clean Code》读后感

《Clean Code》读后感

作者: 夫礼者 | 来源:发表于2017-09-05 23:35 被阅读29次

    已阅读过的书籍中影响排行榜的第三顺位。于三年前翻阅过三次之后,没有再刻意练习过代码规范。

    前言

    在阅读此书时,我还在从事.NET开发,并且已经阅读了《.NET设计规范》第二版,之所以还会购入这本书,一是因为其作者Bob大叔的名头,二是因为随手翻阅其电子版时给我留下的深刻印象。

    两本书基本都是讲述通用规则,但《Clean Code》对代码规范的要求到了近乎变态的苛刻,字里行间可以感受到作者对程序以艺术品般的对待。

    下面,让我回想下三年后的现在,它还给我留下什么? 类似尽快返回这样的细节我就不提了。

    按报纸的格式排版你的代码

    我们阅读一份报纸,总是自上而下,先看标题; 如果对此感兴趣,就集中注意力查看其细节; 如果没兴趣则直接跳到下一个标题,依此进行直到整份报纸结束。

    我们在排版我们的代码时也应该如此,高层的代码调用底层的代码,依次向下,先是概要,然后才是细节。

    调用者一定在被调用者前面

    这一条大部分情况下还是比较容易遵守的,可以帮忙我们形成思维定式,在查找方法引用时,可以直接往下滚,而不需要拉着滚动条上下翻阅。

    火车失事

    这里我一直很难抉择,被java众捧上天的java8函数式编程(.net3.0就实现了),这种编程方式真是写时一时爽,出个问题你都没法定位到哪个,《Clean Code》强烈不推荐这种链式编程。

    但是按《重构》里说的"减少临时变量",又是推崇这种,所以搞得我都精神失常了,现在基本都是现场发挥。

    不要双语编程

    注释也是一种语言,除非必要,尽量让代码解释自己在做什么。如果方法名已经解释清楚了自己所做的事情,那么用另外一种语言翻译一遍的必要性又在哪里? 接受这种思想的初期,我半年内没给代码写过注释……

    变量名的长度

    只决定于其是否能准确表达其含义,两百字符又如何? 一堆a,b,c,d你这是打算把维护工作交给上帝他老人家吗?

    结语

    直接用我现在依然记忆犹新的几句话结束吧。

    1. 尊重一下你的技艺吧,用心是最好的品质。

    2. 你是否愿意在所写过的代码上署上自己的名字。

    3. 开发技术这几十年的发展很大部分都是为了消除重复性代码。

    相关文章

      网友评论

          本文标题:《Clean Code》读后感

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