什么叫精通Java?会CURD,能处理日常简单业务算精通吗?会写算法算精通吗?会写微服务算精通吗?会玩高并发算精通吗?学无止境,只有放下浮躁的心态,能够从那些真正的经典好书中汲取营养,才能最终有所收获。
废话不多说了,开干:
筑基类书籍:

这类书籍专注于讲解基础知识,对于初学者来说,最好人手一本,正所谓“九层之台,起于垒土”,基础扎实,才能走得更远。
《java核心技术I II》
《on java8》(原来大名鼎鼎的《java编程思想》)
《java编程的逻辑》
这三本足够了,基础讲的都非常好。
规范类书籍:
这类书籍能够帮我们养成良好的编码习惯,方便代码管理和后期维护,减少甚至避免“屎山”代码的出现(当然,这个想法过于理想化了,毕竟不是每个项目都是在编码之前请有经验的大佬深度设计的,更多的是那种不管三七二十一,直接开干,什么优雅,什么整洁,什么高内聚低耦合,什么可维护性,统统不管,写就完事,任何代码能跑一个就可以)。
《代码整洁之道》
《架构整洁之道》
《重学设计模式》作者小傅哥,这是一位大佬,书中的案例都是实际项目中抽取的,具有工程价值的,而不是仅仅为了演示概念而写的demo,这点难能可贵。
《阿里巴巴java开发手册》这本不用多介绍,是整个社区集体智慧的结晶,属于枕边书了。官方也提供了免费的电子版,非常方便获取,最好能够人手一本,整个团队在代码规范上能够达成共识,这样能够方便协作。
《重构:改善既有代码的设计》(第一版用的是java语言,第二版用的是JavaScript》。
结丹类书籍:
《java8实战》一本讲java8新特性的书,重点讲函数式编程和流。
《java并发的艺术》
《java并发编程实战》
元婴类书籍:
《算法4》
《深入理解java虚拟机》(第三版)
《凤凰架构》
《剑指offer》(I II)
化神类书籍:
这类书有一个最大的特点:厚。
注意,我说的不是国内大学教材,而是某械工业出版社的那种黑色封皮的书,看完一本得花好长时间的那种。
《算法导论》头一回看到导论比正式的书还厚的多的多的,服气。
《操作系统导论》
《计算机网络:自顶向下方法》
《编译原理》
《设计模式:可复用面向对象软件的基础》
《计算机组成原理》
凡间武学书籍:
必知必会系列
《SQL必知必会》《MySQL必知必会》《正则表达式必知必会》……
这套书英文原版是叫《SQL in 10 Minutes a Day, Sams Teach Yourself (Ben Forta)》的,是给速成班的小孩教的,国内翻译过来全改成《xxx必知必会》,也没什么问题,SQL,正则表达式之类的东西确实比较适合速成,因为都是一些实操性很强的小知识点。这跟我之前表述的观点是不存在冲突的,因为java,c++,python这类不只是一门语言,而是一整套的技术体系,这是没法速成的。不然你三十天“精通"java,”精通“了用来干啥?System.out.println("hello world")吗?那还不如不学呢。
《git pro》
这个不多说,打游戏不存档,猝死局直接玩完。
怎么跑起来系列
《计算机是怎么跑起来的》《软件是怎么跑起来的》《网络是怎么连接的》经典的科普读物。