轻易关上一个招聘网站,看看对高级Java工程师的技能要求。

抛开其它的教训能力等等,单纯从技术,或者说常识上来讲,能够发现一些共通的中央。

  • Java根底
  • 计算机根底
  • 数据库,SQL/NoSQL
  • 罕用开源框架
  • 分布式/微服务
  • 中间件,缓存、消息中间件

书籍是获取常识的最好起源之一。技术书籍浩如烟海,市场上有不少《XXX入门到精通》,《XXX王者归来》,《21天学会XXX》这样的书,当然也有不少经典,集体的精力有限,这些经典不可能都通读。所以·,博主尝试整顿一个Java工程师所需常识的外围书单,尽可能优中选优,挑选出Java工程师必备常识的一些最外围、最经典的书籍,心愿能一起学习,一起提高。

上面举荐的这些书籍我找了很久的电子档才集齐,能够收费分享给大家一起学习,点击下方蓝字能够间接支付。

Java工程师外围书单支付

Java根底

  • 「《Java核心技术》」

    不必多说,Java畛域最有影响力和价值的著述之一。

  • 「《Java编程思维》」

    这个也不必多介绍了吧,永恒的经典。![](https://upload-images.jianshu.io/upload_images/26085619-ee4db0bad30047e5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

下面两部经典,白璧微瑕的大略就是翻译了,技术译著难免会有些词不达意的中央,英语浏览能力过关的话能够看英文原作。国内的《疯狂Java讲义》也尚可。

Java进阶

并发

  • 「《Java并发编程的艺术》」

    博主感觉不错,但豆瓣评分没有设想的高,可能是三人单干,导致内容有些不连贯。国内作者写的Java并发书籍,比较简单易懂,广为流传的Java线程状态变动图就出自本书。

还有一本《Java并发编程实战》,Java并发工具包次要作者之一的著述,然而翻译的锅,能看原版的倡议看原版。

JUC相干最好的材料还是看源码,Doug Lea把他的One Peace都藏在了那里。

JVM

  • 「《深刻了解Java虚拟机》」

    JVM,这一本就够了。有个博主写过:”你看到一篇JVM的文章,如果文章的最初没有写参考这本书,那肯定是作者的版权意识不够。“

程序优化

  • Effective Java》

    和《Java编程思维》一样被称为神书,介绍了如何写强壮,高效的代码,当然浏览须要有肯定的开发教训。

框架

Spirng

  • 「《Spring实战》」

    Spring入门经典书籍。

  • 「《Spring揭秘》」

    书比拟老,然而概念和原理很清晰,看完之后,再看Spring5的源码也很不错。

SpringBoot

  • 「《深入浅出Spring Boot 2.x》」

    博主看过不少SpringBoot的书籍,个人感觉这本还不错,比拟具体、全面。

MyBatis

MyBatis官网文档曾经做得足够好了,根本的应用查看官网就够了。

  • 「《MyBatis技术底细》」

    MyBatis源码解析的书不多,举荐这本,联合源码浏览更佳。

计算机根底

数据结构与算法

四大基础课中对Java工程师最重要的应该是《数据结构》,数据结构和算法个别不分家,所以放在一起。

  • 「《数据结构与算法剖析》」

    国外数据结构与算法剖析方面的经典教材,内容全面、周密严格。

其实想举荐一本教材——严蔚敏老师的《数据结构》,然而这本书是C语言版的,代码实现也不是很多,所以看起来可能比拟吃力。

还有另外一本《算法导论》,不多说了

计算机网络

  • 「《计算机网络》」

    还是忍不住举荐一本教材,比拟全面、零碎,但对非科班选手可能不敌对。

  • 「《图解HTTP》」

    这本不必多介绍了吧,很活泼的解说HTTP协定的书籍,浏览起来比拟敌对。

操作系统

  • 「《深刻了解计算机系统》」

    评估十分不错的计算机操作系统书籍,然而这种黑皮书可能啃起来有些艰难。

这里带过了四大根底中的《计算机组成原理》,相比拟一些比方嵌入式之类比拟底层的开发而言,计组对Java开发可能没那么重要。当然,只是相对而言,了解一些编码、运算、指令、IO之类的还是对理解底层很有帮忙的。作者学的时候用的唐朔飞编著的《计算机组成原理》教材。

数据库

MySQL

  • 「《SQL必知必会》」

    十分受欢迎的MySQL入门书籍,也能够当作工具书来用。

  • 「《高性能MySQL》」

    MySQL畛域的经典著作,进阶必看。

Redis

  • 「《Redis 开发与运维》」

    从开发、运维两个角度总结了 Redis 实战经验,深入浅出地分析底层实现,蕴含大规模集群开发与运维的理论案例。一些api的介绍也是以Java为主。![](https://upload-images.jianshu.io/upload_images/26085619-62c409ce3c88710c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
  • 「《Redis设计与实现》」

    Redis进阶经典书籍。

对于另一个风行的NoSQL MongoDB,思考到利用场景没有下面两个宽泛,所以没有列出,博主看过的《MongoDB实战》,感觉还能够。

分布式/微服务

  • 「《SpringCloud微服务实战》」

    还不错的SpringCloud书籍吧。

  • 「《Spring Cloud Alibaba 微服务原理与实战》」

    Netflex的一些组件进入了保护的状态,Spring Cloud Alibaba在最近风行了起来(技术的变迁真的太快),这方面的书不多,这本是相对而言举荐的多一些的。

常常被拿来和SpringCloud比拟的另一个开源分布式框架,官网文档大略就曾经足够了吧。

消息中间件

风行的三大消息中间件,各挑出一本吧。

  • 「《RabbitMQ实战指南》」

    简略清晰的RabbitMQ技术书籍。

  • 「《Kafka权威指南》」

    Kafka的好书还是不少的,这里举荐评分比拟高的Kafka权威指南。

  • 「《RocketMQ实战与原理解析》」

RocketMQ的书籍不多,这本书入门尚可,原理解析有些薄弱了。


除了以上列出的次要一些次要分类,这里再补充一些。

容器举荐《Docker从入门到事件》《Kubernetes 权威指南》;

Maven举荐《Maven实战》;

Git举荐《ProGit》;

Linux天然是《鸟哥的Linux私房菜》;

Elasticsearch举荐《Elasticsearch实战》;

设计模式举荐《设计模式之禅》。

好了,次要的举荐就到这里,因为博主的技术视线无限,而且尽可能地压缩书单(学不动了),所以有些举荐未必非常正当,一些经典书籍也未列出,有不同意见或者补充,欢送指出。

上述书籍都可收费支付,Java工程师外围书单

如果能够动动小手指点个赞那真是再好不过了