设计模式、重构、编程规范等的经典书籍书籍推荐

有关设计模式、重构、编程规范等的经典书籍很多,有很多你应该已经听说过、甚至看过。今天,我就结合我的经验,对这些书籍进行一个整理和点评。你可以据此来选择适合你的书籍,结合着专栏一块儿来学习,这样学习效果会更好。

1.《设计模式》

学习设计模式,不知道 GoF 的《设计模式》估计会被人笑话的。这本书是设计模式的开山之作。经典的 23 种设计模式最早就诞生于这本书。这本书很薄,只有 200 多页。但是,我个人觉得,这本书还是比较晦涩难懂的。回想起来,我在读大学的时候,就读过几遍此书,但每次都是一知半解,读一遍忘一遍。如果你是设计模式的初学者,不建议从这本书看起。如果你对设计模式已经有所了解,还是蛮推荐你去看下这本经典书的。

 

2.《Head First 设计模式》


 

如果说刚刚提到的《设计模式》是最经典的设计模式书籍,那《Head First 设计模式》就是最通俗易懂的。这本书看起来很厚,但每页里的内容并没有那么密集。

这本书最大的特点就是口语化、场景化。整本书围绕几个人的对话来展开。里面的例子比较脱离实践,但比较容易看懂。如果你之前对设计模式没有太多了解,这本书无疑是你的首选。

3.《Java 与模式》


 

这本书可能并没有那么多人知道,出版的时间也比较久远,而且是跟 Java 语言比较紧耦合,里面很多例子都是在剖析 JDK 里的设计模式。不过这可能是最贴近实战的一本设计模式书籍了,里面包含的实战案例,应该是目前我读过的设计模式书籍中最多的。不过,我个人觉得文笔稍微有些晦涩,有些内容可能要反复读一下才能理解。如果你熟悉 Java 语言,在我推荐的其他书籍都看完的前提下,没事的时候可以看看这本书。

4.《深入浅出面向对象分析与设计》


 

这本书跟《Head Frist 设计模式》都是出自“Head First”系列,写作风格也相同,不过也略显啰嗦。从书名中我们就可以看出,这本书主要是讲面向对象分析和设计。

实际上,很多关于面向对象分析和设计书籍都侧重讲 UML,讲得真的好的书籍却并不多。除此之外,我觉得面向对象分析和设计的理论知识并不多,关键还是实践。所以,如果你工作比较忙,看我的专栏就足够了。如果你特别想系统地学一下的话,看看这本书也完全足够了。

5.《代码大全》


 

这是一本有近千页大部头。不过,这本书讲的东西很杂,不是很聚焦,涵盖了软件开发方法、编程技巧、编码规范、重构等等诸多方面。书如其名,这本书其实更像是软件开发方面的工具类的百科全书。在读过我推荐的其他书籍之后,这本书快速地翻一遍就可以了。

6.《代码整洁之道》

 

这本书非常值得推荐。它主要是讲编码规范,除此之外,还讲到了一些有关设计原则、单元测试、并发编程的东西。因为内容比较侧重编码规范,所以每个知识点都非常明确,能够很容易落地指导你的开发,能够立竿见影地改善你的代码质量。

7.《编写可读代码的艺术》

 

从书名我们就可以看出,本书主要是教你如何写出可读性好的代码,实际上也是在讲比较偏向细节的编码规范。它的内容跟《代码整洁之道》有部分重复,但是推荐你也看一下。《代码整洁之道》《代码大全》《编写可读代码的艺术》三本书是讲编码规范方面的三大著作。看完这三本书,基本的编码规范你就掌握全了。

8.《重构》


 

这本书的作者是 Martin Fowler,他写了很多跟软件开发相关的经典书籍。这本《重构》无疑是他最经典的作品。书中讲到了诸多代码的坏味道,并且给出了相应的改进方法,是作者一手开发经验的总结输出。我推荐本书的原因倒不是说书里面的内容有多真知灼见、让人耳目一新,而是这本书的内容总结得非常全面,很适合帮你去做一个整体、系统的梳理。

9.《重构与模式》


 

我们之前讲过,设计模式一个重要的应用场景就是代码重构。这本书主要讲如何应用设计模式来重构代码,改善代码设计。如果说《重构》是讲如何做低层次的重构,那这本书就是在讲如何做高层次的重构,也就是我们专栏中要讲到的小重构和大重构。这本书非常推荐你读一下,它能让你知道,为什么要用设计模式,如何有的放矢地应用设计模式,而非只是无痛呻吟。

10.《修改代码的艺术》

 

如果说《重构》那本书是从编码规范上来讲如何重构,《重构和模式》是从设计模式上来讲如何重构,那这本书可以粗鲁地归为从面向对象设计思想、设计原则上来讲重构。除此之外,这本书更偏向于教你如何来重构,不像上面两本书那样聚焦,所以是一个很好的补充。这三本书合起来称为重构“三部曲”。这本书的示例代码是用 C++ 写的,不过也很容易看懂,很推荐你读一下。

总结今天的加餐内容就这些,我来稍微总结回顾一下推荐的书籍。这些书我基本上都看过,并且很多都看了好几遍,如果你时间宽裕,想要真正掌握写出优秀代码的能力,非常推荐你认真看一下,相信会对你有非常大的帮助。


 

如果说数据结构和算法是教你如何写出高效的代码,那设计模式讲的就是如何写出可扩展、可读、可维护的高质量代码。因为代码光 “够用” 是远远不够的,还要 “好用”。设计模式跟算法一样,与编码密切相关,能直接提高你的开发能力。

王争是《数据结构与算法之美》作者,前 Google 工程师,干过架构、做过产品、带过团队、创过业,最后发现还是喜欢写代码。工作十多年,始终没有脱离编码第一线。

他把自己十多年写代码的经验沉淀成这门代码提升课《设计模式之美》,内容设计紧贴工作中的开发场景,完全使用真实项目的代码讲解,涵盖了代码设计的方方面面,包括面向对象、设计原则、编码规范、重构技巧、设计模式等,能真正提升你的代码能力,让编程内功转化为直接的开发生产力。

目前已经有 10W 人在学习, 110 讲全集更新完,加餐有 10 讲,我一直认为,学习只是一方面,务必多用于实战练习,坚持三分学、七分练,才能做到事半功倍。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值