当前位置:首页 > 每日看点

RoertC.Martin的《代码整洁之道》这本书怎么样?

卡卷网2年前 (2025-01-05)每日看点300

圈子里普遍都是好话,想听不同声音的,推荐看一看这篇博客:

It'sproalytimetostoprecommendingCleanCode

也许是时候停止推荐《CleanCode》了

原文很长,我做个小节:

<>#1.反对的理由

    示例代码质量差
以书中函数章节代码为例,代码类名糟糕,大量私有方法存在副作用,方法间通过成员变量传递数据,代码可读性和可性差,部分方法名不符合书中自身命名规范;还有如质数生成器等示例代码也存在算法不明、方法名难懂等诸多问题。
    部分建议不合理
部分观点如函数不应包含嵌套控制结构、理想函数2-4行、布尔标志参数是不良实践的理由等缺乏依据;认为代码重复是“万恶之源”的观点过于绝对,适量重复有时更清晰;主张源文件应按特定层次阅读,不符合多数实际情况。
    内容局限性
多章内容实用性低,如大量Ja代码重构示例、JUnit内部剖析等;内容聚焦于面向对象代码,忽视编程范式;以Ja为唯一示例语言且用法陈旧过时。
    理念存在缺陷
书中TDD循环未提及前期任务分解步骤;对“数据结构”的定义与大众认知不符,且缺乏对常见数据结构的相关内容。

<>#2.替代书籍推荐

推荐JohnOusterhout的《APhilosophyofSoftwareDesign》,虽不是《CleanCode》的直接替代品,侧重软件设计高层实践、代码示例少,不太适合编程初学者,但内容更新颖、更有说服力,给出的建议更高级,更经得起时间考验。

<>#3.作者最后吐槽

经验丰富的程序员阅读《代码整洁之道》,几乎不会有任何收获,主要是他们能够根据自己的经验权衡书中给出的建议并做出明智的决定......

而对于缺乏经验的程序员(这种入门级编程教材的主要读者就是他们),他们无法区分好建议和坏建议,也无法看出示例代码很糟糕、不应模仿。

缺乏经验的程序员会轻信这些经验,然后,直到很多年以后,才能明白自己被严重误导了。


见仁见智,但你首先得读一遍,不是吗?

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/6423.html

分享给朋友:

相关文章

一条音频千万播放!喜马拉雅如何成为亿万女性用户的情感树洞?

一条音频千万播放!喜马拉雅如何成为亿万女性用户的情感树洞?

哪个时刻你觉得自己很孤独,是母胎单身20余年渴望被陪伴,是因为身材焦虑渴望被接受,是走在创业独木桥上渴望被支持,还是困在产后抑郁中渴望被理解?…

网易云音乐里有哪些打动你的评论?

1. “如果我被强奸了,有人说我会失去贞操。” “我怎么失去贞操了呢?” “我的贞操不在我的阴道里。” “失去贞操的是强奸犯,而不是被强奸的人。” 2. 但要记得那年海边的烟火,我们不拘一格 ,嘲笑过生活。 ………网易云热评《这样就很好》…

4499 元起的荣耀Magic7 系列实际使用体验怎么样,值得入手吗?

全是软文。。。。。。不过我买了,标准版。为什么买荣耀:屏幕看着舒服,玩游戏选择大屏,超声波指纹解锁。其它,系统、续航、充电、拍照,不是最强,但均衡下来短板都不是很短。其它米OV,IQ、一加,都看了,预算有限,米OV的小屏不感兴趣,OPPO硬…

腾讯文档回收站彻底删除文件真的找不回来了吗?

趁早打电话联系腾讯文档的人可能还有救,一般这种都是数据库里标记为删除,文件还没有实际删除,然后经过一段时间后程序统一进行真删除。这个“一段时间”可长可短,可能是一小时也可能是几天几个月甚至几年,要看腾讯服务器的程序是怎么写的。 不过你联系腾…

为什么说不懂电脑的不要碰AMD?

作为一个资深垃圾佬,说缺点前,先说优点吧AMD CPU(后续简称AU)的优点:处理器对比Intel,三级缓存更大,最明显的感知就是,网游帧数更高(5900X,7900X之类高端型号都是双CCX共享大缓存,反而不如次一点的CPU帧数更高);相…

PHP承载百万/天 访问量需要用到什么技术?

当年做一个百万PV的商城,也不过是两台2c4g的阿里云虚机罢了(其实一台就够,另外一台主要的逼着大家一定开发的时候一定要有负载均衡和横向扩容的意识)。当时框架还是Thinkphp3.2,框架提高运行效率的开关全打开,标准的lnmp模式,单机…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。