这篇文章的内容其实很早就写了,而且,我也已经同步在了个人 Github 的一个仓库中(仓库内容还在继续完善中),地址:https://github.com/CodingDocs/awesome-cs-books(阅读原文便可直达) 。对应的 Gitee地址:https://gitee.com/SnailClimb/awesome-cs (Github没法访问或者访问速度比较慢的小伙伴能够看码云上的对应内容)。html
考虑到还未发过相似的文章,因此,今天晚上就来一篇!下面推荐都是我看过而且我以为值得推荐的书籍。java
不过,这些书籍都比较偏理论,只能帮助你创建一个写优秀代码的意识标准。若是你想要编写更高质量的代码、更高质量的软件,仍是应该多去看优秀的源码,多去学习优秀的代码实践(好比设计模式、设计原则)git
《重构》程序员
必看书籍!无需多言。编程书籍领域的瑰宝。github
世界顶级、国宝级别的 Martin Fowler 的书籍,能够说是软件开发领域最经典的几本书之一。目前已经出了第二版。面试
这是一本值得你看不少遍的书籍。编程
《Clean Code》设计模式
《Clean Code》是 Bob 大叔的一本经典著做,强烈建议小伙伴们必定要看看。架构
Bob 大叔将本身对整洁代码的理解浓缩在了这本书中,真可谓是对后生的一大馈赠。框架
其实,《代码大全(第 2 版)》这本书我自己是不太想推荐给你们了。可是,看在它的豆瓣评分这么高的份上,仍是拿出来讲说吧!
这也是一本很是经典的书籍,第二版对初版进行了重写。
我简单地浏览过全书的内容,感受内容整体比较虚,对于大部分程序员的做用其实不大。若是你想要切实地提升本身的代码质量,《Clean Code》和 《编写可读代码的艺术》我以为都要比《代码大全》这本书更好。
不过,最重要的仍是要多看优秀的源码,多学习优秀的代码实践。
《编写可读代码的艺术》这本书要表达的意思和《Clean Code》很像,你看它俩的目录就能够看出来了。
在我看来,若是你看过 《Clean Code》 的话,就不须要再看这本书了。固然,若是你有时间和精力,也能够快速过一遍。
另外,我这里还要推荐一个叫作 write-readable-code 的仓库。这个仓库的做者免费分享了一系列基于《编写可读代码的艺术》这本书的视频。这一系列视频会基于 Java 语言来教你如何优化我们的代码。
在实践中学习的效果确定会更好!推荐小伙伴们都抓紧学起来啊!
Java 程序员必看!
又是一本 Java 领域国宝级别的书,很是经典。这本书主要介绍了在 Java 编程中不少极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员天天所面临的问题的解决方案。这篇文章可以很是实际地帮助你写出更加清晰、健壮和高效的代码。本书中的每条规则都以简短、独立的小文章形式出现,并经过例子代码加以进一步说明。
《 The Clean Coder》是 Bob 大叔的又一经典著做。
《Clean Code》和《 The Clean Coder》这两本书在国内都翻译为 《代码整洁之道》,我以为这个翻译仍是不够优雅的。
另外,二者的内容差别也很大。《Clean Code》这本书从代码层面来说解如何提升本身的代码质量。而《The Clean Coder》这本书则是从如何成为一名更优秀的开发者的角度来写的,好比这书会教你如何在本身的领域更专业、如何说不、如何作时间管理、如何处理压力等等。
你没看错,《架构整洁之道》这本书又是 Bob 大叔的经典之做。
这本书我强烈安利!认真读完以后,我保证你对编程本质、编程语言的本质、软件设计、架构设计能够有进一步的认识。
国内的不少书籍和专栏都借鉴了《架构整洁之道》 这本书。绝不夸张地说,《架构整洁之道》就是架构领域最经典的书籍之一。
正如做者说的那样:
若是深刻研究计算机编程的本质,咱们就会发现这 50 年来,计算机编程基本没有什么大的变化。编程语言稍微进步了一点,工具的质量大大提高了,可是计算机程序的基本构造没有什么变化。
虽然咱们有了新的编程语言、新的编程框架、新的编程范式,可是软件架构的规则仍然和 1946 年阿兰·图灵写下第一行机器代码的时候同样。
这本书就是为了把这些永恒不变的软件架构规则展示出来。
这本书主要描述了软件开发的基本定律:一个须要 10 天才能干完的活,不可能让 10 我的在 1 天干完!
看书名的第一眼,感受不像是技术类的书籍。可是,就是这样一个看似和编程不沾边的书名,却成了编程领域长久相传的经典。
这本书对于现代软件尤为是复杂软件的开发的规范化有深入的意义。
这本领域驱动设计方面的经典之做一直被各类推荐,可是我还来及读。
最后再推荐两个相关的文档: