当前位置:首页 > 每日看点 > 正文内容

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

卡卷网10个月前 (01-05)每日看点157

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

It'sproalytimetostoprecommendingCleanCode

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

原文很长,我做个小节:

<>#1.反对的理由

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

<>#2.替代书籍推荐

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

<>#3.作者最后吐槽

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

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

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


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

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

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

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

分享给朋友:

相关文章

创业容易吗?

创业容易吗?创建企业不一定是困难或令人生畏的。它可以从一个简单但有力的想法开始,比如小强意识到,如果洗手液能杀死真菌,尤其是拳击台上的真菌,就会更加有用。创业确实需要奉献精神、努力工作和仔细规划——这是没有办法的。虽然这本身可能并不容易,但...

WordPress建设的网站为什么不推荐国内机房?

WordPress建设的网站为什么不推荐国内机房?

我劝大家不要用WordPress做国内网站,不要用国内机房的主机。原因如下:1 WordPress 很多主题和插件都是国外开发的,特别是付费版本,需要联网验证,或者远程写入。国内机房的虚拟主机和服务器大概率会屏蔽或者阻断这些连接,无法完成任...

你为什么讨厌抖音?

我就被抖音毁了。现在被我媳妇从抖音里拯救出来了。我为什么会这样说?我媳妇硕士在读,我文化程度相对就比较低了。大多数人看抖音其实就是为了一图一乐呵刚开始我也是这样的,我是2017年在朋友的推荐下注册了抖音,刚开始那时候对抖音不太上瘾,一周也就...

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

最主要原因是因为——贵!看看我家里搭建的这一套吧。目前我家中有5台常用的NAS,分别为群晖DS1522+、威联通TS-464C2、绿联DX4600 Pro 、极空间Z4S、威联通TS-AI642。个人认为,这其中的每台NAS都是时代的翘楚,...

有哪些是你用上了mac才知道的事?

用上了高端的Mac(已退货)才知道:原来文件夹里面的文件,你看到是8个,其实可能有12个。其中3个图标重叠在一起了,另外一个被拖动到屏幕外面了。用上了高端的Mac(已退货)才知道:原来鼠标灵敏度有问题是因为系统内置了鼠标加速度,只能用控制台...

无意中发现技术主管写的代码,大家帮忙看看什么水平?

无意中发现技术主管写的代码,大家帮忙看看什么水平?

虽然很多答主用了诸如“典范级”、“心旷神怡” 的形容, 赞美这段代码, 但这里, 出于技术讨论的动机, 我说说不同看法.栈, 如果善于利用栈来处理树结构, 那么可以写出更简洁的代码, 根本不需要 recuresiveFn 这种方法. 泛型,...

发表评论

访客

看不清,换一张

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