Recommended books for Java learning

Java

Base

  • "Head First Java" (recommended, Douban score 8.7, 1.0K+ reviews): It can be said to be my Java enlightenment book, especially suitable for novices to read, of course it is also suitable for us to review old Java knowledge points.
  • "Java Core Technology Volume 1+Volume 2" (recommended): Two great books. It is recommended to read after a little Java foundation. The introduction is relatively in-depth, and it is highly recommended. I usually use these two books to consolidate knowledge points, and they are two good books that are suitable for keeping by my side.
  • "JAVA Network Programming 4th Edition": You can systematically learn some concepts of the network and the use of network programming in Java.
  • "Java Programming Thoughts (4th Edition)" (recommended, Douban score 9.1, 3.2K+ reviews): Most people call it the Bible in the Java field, but I don't recommend it for beginners, it's a bit dissuading. It's better to read after a little basic.

concurrency

  • "The Beauty of Java Concurrent Programming" (recommended): A book published in October 2018, I personally feel very good, and the explanation of each knowledge point is great.
  • "The Art of Java Concurrent Programming" (recommended, Douban score 7.2, 0.2K+ reviews): This book is not very suitable as an introductory book for Java concurrency, and requires a certain JVM foundation. I feel that some things are quite in-depth, and I recommend reading.
  • "Practical Java High Concurrency Programming" (recommended, Douban score 8.3): The quality of the book is not to say, I recommend everyone to take a good look.
  • "Java High Concurrency Programming Detailed Explanation" (Douban score 7.6): A book published in June 2018, the content is very detailed, but it may be a bit too wordy, but this is just my feeling.

JVM

  • "In-depth Understanding of Java Virtual Machine (2nd Edition) Zhou Zhiming" (recommended, Douban score 8.9, 1.0K+ reviews): It is recommended to read it several times. The two large modules of threads are listed completely.
  • "Practical JAVA Virtual Machine" (recommended, Douban score 8.0, 1.0K+ reviews): It is good to understand the knowledge of Java virtual machine as an introduction.

Java8 new features

  • "Java 8 in Action" (recommended, Douban score 9.2): Skill upgrades for Java 8, including Lambdas, streams, and functional programming features. The consistent style of the actual combat series allows you to quickly get started and apply it. Lambdas supported by Java 8 are syntactically supported by compact expressions. Java 8 provides Stream, learning and using it can establish the cognition of streaming programming.
  • "Java 8 Programming Reference Official Tutorial" (recommended, Douban score 9.2): Not bad.

Code optimization

  • "Refactoring_Improving the Design of Existing Code" (recommended): 9.1 points on Douban, the originator of refactoring books.
  • "Effective java" (recommended, Douban score 9.0, 1.4K+ reviews): This book introduces 78 rules of thumb that are of great practical value in Java programming, and these rules of thumb cover the problems most developers face every day. solution. With a comprehensive description of the techniques used by Java platform design experts, it reveals what to do and what not to do to produce clean, robust, and efficient code. Each rule in this book appears as a short, self-contained mini-article and is further illustrated with example code. This book content is comprehensive, structure is clear, explain detailed. It can be used as a reference book for technical personnel.
  • "The Way to Code Cleanliness" (recommended, Douban score 9.1): Although the Java language is used as an example, the entire article is about Java's object-oriented thinking, but most of the content can also be applied to other languages.
  • Alibaba Java Development Manual (detailed version) https://github.com/alibaba/p3c/blob/master/Alibaba Java Development Manual (detailed version).pdf
  • Google Java Programming Style Guide: http://www.hawstein.com/posts…

network

  • 《图解 HTTP》(推荐,豆瓣评分 8.1 , 1.6K+人评价): 讲漫画一样的讲 HTTP,很有意思,不会觉得枯燥,大概也涵盖也 HTTP 常见的知识点。因为篇幅问题,内容可能不太全面。不过,如果不是专门做网络方向研究的小伙伴想研究 HTTP 相关知识的话,读这本书的话应该来说就差不多了。
  • 《HTTP 权威指南》 (推荐,豆瓣评分 8.6):如果要全面了解 HTTP 非此书不可!

操作系统

  • 《鸟哥的 Linux 私房菜》(推荐,,豆瓣评分 9.1,0.3K+人评价):本书是最具知名度的 Linux 入门书《鸟哥的 Linux 私房菜基础学习篇》的最新版,全面而详细地介绍了 Linux 操作系统。全书分为 5 个部分:第一部分着重说明 Linux 的起源及功能,如何规划和安装 Linux 主机;第二部分介绍 Linux 的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口 shell 和管理系统的好帮手 shell 脚本,另外还介绍了文字编辑器 vi 和 vim 的使用方法;第四部分介绍了对于系统安全非常重要的 Linux 账号的管理,以及主机系统与程序的管理,如查看进程、任务分配和作业管理;第五部分介绍了系统管理员 (root) 的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。

数据结构与算法

  • 《大话数据结构》(推荐,豆瓣评分 7.9 , 1K+人评价):入门类型的书籍,读起来比较浅显易懂,适合没有数据结构基础或者说数据结构没学好的小伙伴用来入门数据结构。
  • 《数据结构与算法分析:C 语言描述》(推荐,豆瓣评分 8.9,1.6K+人评价):本书是《Data Structures and Algorithm Analysis in C》一书第 2 版的简体中译本。原书曾被评为 20 世纪顶尖的 30 部计算机著作之一,作者 Mark Allen Weiss 在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评.已被世界 500 余所大学用作教材。
  • 《算法图解》(推荐,豆瓣评分 8.4,0.6K+人评价):入门类型的书籍,读起来比较浅显易懂,适合没有算法基础或者说算法没学好的小伙伴用来入门。示例丰富,图文并茂,以让人容易理解的方式阐释了算法.读起来比较快,内容不枯燥!
  • 《算法 第四版》(推荐,豆瓣评分 9.3,0.4K+人评价):Java 语言描述,算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述。书的内容非常多,可以说是 Java 程序员的必备书籍之一了。

数据库

  • 《高性能 MySQL》(推荐,豆瓣评分 9.3,0.4K+人评价):mysql 领域的经典之作,拥有广泛的影响力。不但适合数据库管理员(dba)阅读,也适合开发人员参考学习。不管是数据库新手还是专家,相信都能从本书有所收获。
  • 《Redis 实战》:如果你想了解 Redis 的一些概念性知识的话,这本书真的非常不错。
  • 《Redis 设计与实现》(推荐,豆瓣评分 8.5,0.5K+人评价):也还行吧!
  • 《MySQL 技术内幕-InnoDB 存储引擎》(推荐,豆瓣评分 8.7):了解 InnoDB 存储引擎底层原理必备的一本书,比较深入。

系统设计

设计模式

  • 《设计模式 : 可复用面向对象软件的基础》 (推荐,豆瓣评分 9.1):设计模式的经典!
  • 《Head First 设计模式(中文版)》 (推荐,豆瓣评分 9.2):相当赞的一本设计模式入门书籍。用实际的编程案例讲解算法设计中会遇到的各种问题和需求变更(对的,连需求变更都考虑到了!),并以此逐步推导出良好的设计模式解决办法。

常用框架

  • 《深入分析 Java Web 技术内幕》: 感觉还行,涉及的东西也蛮多。
  • 《Netty 实战》(推荐,豆瓣评分 7.8,92 人评价):内容很细,如果想学 Netty 的话,推荐阅读这本书!
  • 《从 Paxos 到 Zookeeper》(推荐,豆瓣评分 7.8,0.3K 人评价):简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了 Paxos 和 ZAB 协议。同时,本书深入介绍了分布式一致性问题的工业解决方案——ZooKeeper,并着重向读者展示这一分布式协调框架的使用方法、内部实现及运维技巧,旨在帮助读者全面了解 ZooKeeper,并更好地使用和运维 ZooKeeper。
  • 《Spring 实战(第 4 版)》(推荐,豆瓣评分 8.3,0.3K+人评价):不建议当做入门书籍读,入门的话可以找点国人的书或者视频看。这本定位就相当于是关于 Spring 的新华字典,只有一些基本概念的介绍和示例,涵盖了 Spring 的各个方面,但都不够深入。就像作者在最后一页写的那样:“学习 Spring,这才刚刚开始”。
  • 《RabbitMQ 实战指南》:《RabbitMQ 实战指南》从消息中间件的概念和 RabbitMQ 的历史切入,主要阐述 RabbitMQ 的安装、使用、配置、管理、运维、原理、扩展等方面的细节。如果你想浅尝 RabbitMQ 的使用,这本书是你最好的选择;如果你想深入 RabbitMQ 的原理,这本书也是你最好的选择;总之,如果你想玩转 RabbitMQ,这本书一定是最值得看的书之一
  • 《Spring Cloud 微服务实战》:从时下流行的微服务架构概念出发,详细介绍了 Spring Cloud 针对微服务架构中几大核心要素的解决方案和基础组件。对于各个组件的介绍,《Spring Cloud 微服务实战》主要以示例与源码结合的方式来帮助读者更好地理解这些组件的使用方法以及运行原理。同时,在介绍的过程中,还包含了作者在实践中所遇到的一些问题和解决思路,可供读者在实践中作为参考。
  • 《第一本 Docker 书》:Docker 入门书籍!

网站架构

  • 《大型网站技术架构:核心原理与案例分析+李智慧》(推荐):这本书我读过,基本不需要你有什么基础啊~读起来特别轻松,但是却可以学到很多东西,非常推荐了。另外我写过这本书的思维导图,关注我的微信公众号:“Java 面试通关手册”回复“大型网站技术架构”即可领取思维导图。
  • 《亿级流量网站架构核心技术》(推荐):一书总结并梳理了亿级流量网站高可用和高并发原则,通过实例详细介绍了如何落地这些原则。本书分为四部分:概述、高可用原则、高并发原则、案例实战。从负载均衡、限流、降级、隔离、超时与重试、回滚机制、压测与预案、缓存、池化、异步化、扩容、队列等多方面详细介绍了亿级流量网站的架构核心技术,让读者看后能快速运用到实践项目中。

软件底层

  • 《深入剖析 Tomcat》(推荐,豆瓣评分 8.4,0.2K+人评价):本书深入剖析 Tomcat 4 和 Tomcat 5 中的每个组件,并揭示其内部工作原理。通过学习本书,你将可以自行开发 Tomcat 组件,或者扩展已有的组件。 读完这本书,基本可以摆脱背诵面试题的尴尬。
  • 《深入理解 Nginx(第 2 版)》:作者讲的非常细致,注释都写的都很工整,对于 Nginx 的开发人员非常有帮助。优点是细致,缺点是过于细致,到处都是代码片段,缺少一些抽象。

其他

  • 《黑客与画家》:这本书是硅谷创业之父,Y Combinator 创始人 Paul Graham 的文集。之所以叫这个名字,是因为作者认为黑客(并非负面的那个意思)与画家有着极大的相似性,他们都是在创造,而不是完成某个任务。

Guess you like

Origin blog.csdn.net/shark1357/article/details/109571888