有哪些可以提高代码质量的书籍推荐?

我是程序汪

共 3490字,需浏览 7分钟

 ·

2021-07-30 22:37


下面推荐都是我看过并且我觉得值得推荐的书籍。

不过,这些书籍都比较偏理论,只能帮助你建立一个写优秀代码的意识标准。如果你想要编写更高质量的代码、更高质量的软件,还是应该多去看优秀的源码,多去学习优秀的代码实践(比如设计模式、设计原则)。

代码整洁之道

《重构》[1]

必看书籍!无需多言。编程书籍领域的瑰宝。

世界顶级、国宝级别的 Martin Fowler 的书籍,可以说是软件开发领域最经典的几本书之一。目前已经出了第二版。

这是一本值得你看很多遍的书籍。

《Clean Code》[2]

《Clean Code》是 Bob 大叔的一本经典著作,强烈建议小伙伴们一定要看看。

Bob 大叔将自己对整洁代码的理解浓缩在了这本书中,真可谓是对后生的一大馈赠。

《代码大全》[3]

其实,《代码大全(第 2 版)》这本书我本身是不太想推荐给大家了。但是,看在它的豆瓣评分这么高的份上,还是拿出来说说吧!

这也是一本非常经典的书籍,第二版对第一版进行了重写。

我简单地浏览过全书的内容,感觉内容总体比较虚,对于大部分程序员的作用其实不大。如果你想要切实地提高自己的代码质量,《Clean Code》和 《编写可读代码的艺术》我觉得都要比《代码大全》这本书更好。

不过,最重要的还是要多看优秀的源码,多学习优秀的代码实践。

《编写可读代码的艺术》[4]

《编写可读代码的艺术》这本书要表达的意思和《Clean Code》很像,你看它俩的目录就可以看出来了。

在我看来,如果你看过 《Clean Code》的话,就不需要再看这本书了。当然,如果你有时间和精力,也可以快速过一遍。

另外,我这里还要推荐一个叫做 write-readable-code[5] 的仓库。这个仓库的作者免费分享了一系列基于《编写可读代码的艺术》这本书的视频。这一系列视频会基于 Java 语言来教你如何优化咱们的代码。

在实践中学习的效果肯定会更好!推荐小伙伴们都抓紧学起来啊!

《Effective java 》[6]

Effective Java中文版(第3版)

Java 程序员必看!

又是一本 Java 领域国宝级别的书,非常经典。这本书主要介绍了在 Java 编程中很多极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。这篇文章能够非常实际地帮助你写出更加清晰、健壮和高效的代码。本书中的每条规则都以简短、独立的小文章形式出现,并通过例子代码加以进一步说明。

程序员职业素养

《 The Clean Coder》[7]

《 The Clean Coder》是 Bob 大叔的又一经典著作。

《Clean Code》和《 The Clean Coder》这两本书在国内都翻译为 《代码整洁之道》,我觉得这个翻译还是不够优雅的。

另外,两者的内容差异也很大。《Clean Code》这本书从代码层面来讲解如何提高自己的代码质量。而《The Clean Coder》这本书则是从如何成为一名更优秀的开发者的角度来写的,比如这书会教你如何在自己的领域更专业、如何说不、如何做时间管理、如何处理压力等等。

架构整洁之道

《架构整洁之道》[8]

你没看错,《架构整洁之道》这本书又是 Bob 大叔的经典之作。

这本书我强烈安利!认真读完之后,我保证你对编程本质、编程语言的本质、软件设计、架构设计可以有进一步的认识。

国内的很多书籍和专栏都借鉴了《架构整洁之道》 这本书。毫不夸张地说,《架构整洁之道》就是架构领域最经典的书籍之一。

正如作者说的那样:

如果深入研究计算机编程的本质,我们就会发现这 50 年来,计算机编程基本没有什么大的变化。编程语言稍微进步了一点,工具的质量大大提升了,但是计算机程序的基本构造没有什么变化。

虽然我们有了新的编程语言、新的编程框架、新的编程范式,但是软件架构的规则仍然和 1946 年阿兰·图灵写下第一行机器代码的时候一样。

这本书就是为了把这些永恒不变的软件架构规则展现出来。

项目管理

《人月神话》[9]

这本书主要描述了软件开发的基本定律:一个需要 10 天才能干完的活,不可能让 10 个人在 1 天干完!

看书名的第一眼,感觉不像是技术类的书籍。但是,就是这样一个看似和编程不沾边的书名,却成了编程领域长久相传的经典。

这本书对于现代软件尤其是复杂软件的开发的规范化有深刻的意义。

《领域驱动设计:软件核心复杂性应对之道》[10]

这本领域驱动设计方面的经典之作一直被各种推荐,但是我还来及读。

软件质量其他书籍推荐

  • 《代码的未来》[11] :这本书的作者是 Ruby 之父松本行弘,算是一本年代比较久远的书籍(13 年出版),不过,还是非常值得一读。这本书的内容主要介绍是编程/编程语言的本质。我个人还是比较喜欢松本行弘的文字风格,并且,你看他的文章也确实能够有所收获。
  • 《深入浅出设计模式》[12] :比较有趣的风格,适合设计模式入门。
  • 《软件架构设计:大型网站技术架构与业务架构融合之道》[13] :内容非常全面。适合面试前突击一些比较重要的理论知识,也适合拿来扩充/完善自己的技术广度。
  • 《微服务架构设计模式》[14] :这本书是世界十大软件架构师之一、微服务架构先驱 Chris Richardson 亲笔撰写,豆瓣评分 9.6。示例代码使用 Java 语言和 Spring 框架。帮助你设计、实现、测试和部署基于微服务的应用程序。

最后再推荐两个相关的文档:

  • 阿里巴巴 Java 开发手册 :https://github.com/alibaba/p3c
  • Google Java 编程风格指南: http://www.hawstein.com/posts/google-java-style.html

参考资料

[1]

《重构》: https://book.douban.com/subject/30468597/

[2]

《Clean Code》: https://book.douban.com/subject/4199741/

[3]

《代码大全》: https://book.douban.com/subject/1477390/

[4]

《编写可读代码的艺术》: https://book.douban.com/subject/10797189/

[5]

write-readable-code: https://github.com/biezhi/write-readable-code

[6]

《Effective java 》: https://book.douban.com/subject/3360807/

[7]

《 The Clean Coder》: https://book.douban.com/subject/26919457/

[8]

《架构整洁之道》: https://book.douban.com/subject/30333919/

[9]

《人月神话》: https://book.douban.com/subject/1102259/

[10]

《领域驱动设计:软件核心复杂性应对之道》: https://book.douban.com/subject/5344973/

[11]

《代码的未来》: https://book.douban.com/subject/24536403/

[12]

《深入浅出设计模式》: https://book.douban.com/subject/1488876/

[13]

《软件架构设计:大型网站技术架构与业务架构融合之道》: https://book.douban.com/subject/30443578/

[14]

《微服务架构设计模式》: https://book.douban.com/subject/33425123/



程序汪资料链接

欢迎添加程序汪个人微信 itwang007  进粉丝群或围观朋友圈

浏览 13
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报