When learning Java, books are one of the essential learning tools, especially for self-learners. Without further ado, let me recommend some good books for advanced Java.
Part One: Java Language
1."Java Programming Specifications" Suitable for: Beginner and intermediate
Introduction : The author of this book is James Gosling, who is known as the father of Java. It is recommended reading for beginners. It explains the basics very well.
2."Java Programming Thoughts" Suitable for: Beginner and intermediate level
Introduction: Douban gave it a score of 9.1, and is widely praised by programmers around the world. Some people say that this book is not suitable for beginners, but the editor believes that the author does not place too many demands on the readers' existing knowledge and experience, but only requires that the readers know basic programming languages. The author explains each obscure and abstract concept with easy-to-understand and small but direct examples, which requires time to study carefully.
3."Java Core Technology: Basic Knowledge of Volume I" Suitable for: Beginner and Intermediate
Introduction: Official institutional book, it is always a good idea to have a copy . This book is comprehensive and easy to understand. It can be used as a dictionary and is a must-have for getting started with learning.
4."Java Data Structures and Algorithms" Suitable for: Beginner, Intermediate, Advanced
Introduction: This book is basically out of stock, which is enough to show its popularity. The author mainly uses Java language to describe our commonly used data structures, which is worth a read.
5."Java and Patterns" Suitable for: Intermediate and advanced level
Introduction: A rare good Java book written by a Chinese. A practical textbook that mainly explains design principles and the most common design patterns. This book appeared relatively early and is one of the must-read books for beginners to intermediate to advanced students.
6."SCJP Study Guide" Suitable for: Beginner, intermediate level
Introduction: A must-have book for the official exam, which is very helpful for testing your Java learning situation . This book is especially suitable for students to read. If you understand this book thoroughly, you will not have any problems with Java questions in job interviews. Some engineers who have worked for many years will encounter some problems that they cannot solve.
Part 2: Intermediate Advanced Chapter
1."Refactoring: Improving the Design of Existing Code" Suitable for: Intermediate, Advanced
Introduction: Clearly reveals the process of refactoring, explains the principles and best practices of refactoring, and gives when and where to start digging into the code and improving it. The masterpiece of a master lets you understand that software is improved step by step, not achieved overnight.
2."XML Introduction Classic" Suitable for: Beginner, Intermediate, Advanced
Introduction: Many people think there is no need to buy XML books, but I still recommend one This book is given to you as a reference book, and reading this book can help you understand all aspects of XML. Many things in it are still used.
3."jQuery Basics Tutorial" Suitable for: Beginner, Intermediate, Advanced
Introduction: Learning jQuery from this point is the foundation, otherwise you will encounter many problems in the future Strange problem, I don't know why. Personally, I feel that jQuery has become the current JavaScript standard library, with countless plug-ins, which greatly simplifies front-end work.
4."The Definitive Guide to JavaScript" Suitable for: Beginner, Intermediate, Advanced
Introduction: A reference book that introduces JavaScript from a new perspective and level, filling in the There is a gap in the market. It is one of the essential reference books for learning js.
5."The Way to Clean Code" Suitable for: Intermediate and advanced level
Introduction: Describes a series of effective clean code operation practices. The ideal coding in software engineering is that code compiled by countless people looks like it was written by one person. This book is good as a standard.
Part Three: Advanced Chapter
1."Enterprise JavaBeans 3.0 Chinese Version"Suitable for: Intermediate, Advanced
Introduction: EJB technology is used in large systems, mainly banks and other financial institutions. It is one of the options for developing distributed programs, but I don't like it. In fact, banks don't use it very much. Used in combination with JavaEE containers, open source ones include JBoss, and commercial ones are supported by IBM and Oracle.
2."Java Concurrent Programming Practice" Suitable for: Intermediate, advanced
Introduction: The title of this book "Java Concurrent Programming Practice" somewhat obliterates its Value, which not only describes Java's multi-threading facilities, but also provides a thorough explanation of general concurrent programming rationale. There are relatively few books on concurrent programming on the market, but this one is recommended.
3."The Definitive Guide to Hadoop" Suitable for: Intermediate and advanced
Introduction: A must-have book on cloud computing. As a distributed computing tool, Hadoop can be said to be the only mature product on the market, and everyone is following it. Since cloud computing is very popular, if you understand this book, you will roughly understand what the cloud is and how to build the cloud.
4.《Java Message Service》 Suitable objects: Intermediate and advanced
Introduction: An in-depth explanation of the key technologies of Java Message Service (JMS) and message delivery mechanisms such as the underlying technology of the JMS1.1 specification, Java classes and interfaces, programming models and their different implementations. The explanation is simple and clear, focusing on how to use and some principles of design. The layout is quite good.
Students and newcomers to the workplace
"Java Core Technology·Volume 1 Basic Knowledge (Original Book 10th Edition)"
This volume is enough for beginners. This volume is very basic and easy to understand. It is easier to read than "Java Programming Thoughts". It is recommended that everyone has one copy. It has reached the 10th edition, covering the latest technology, and is frequently read.
Personal Improvement
"Java8 Practical Combat"
The new features of Java8 are explained in the most complete and detailed way.
《Effective Java》
Effective Java is one of the best programming books I have ever read. It contains a large number of excellent Java programming practices and has a good understanding of generics. and concurrency, two Java features full of pitfalls, give insightful advice, so much so that James Gosling, the father of Java, wrote a preface to this book: "I wish I had this book 10 years ago. Some people may think that I I don’t need any Java books, but I need this book."
Spring Framework
##"Spring Practice (4th Edition)"
"Mastering Spring 4.x - Practical Enterprise Application Development"
I have bought all the above two books. It is a great book written by the blogger. The SpinrgMVC dry information series refers to the contents of these two books.《Spring Boot in Practice》
《JavaEE development subversive: Spring Boot in practice》
《 SpringBoot Revealed: Quickly Build a Microservice System"
All the above three Spring Boot bloggers have read it, and some of the series of articles also referenced it from the book, and they have benefited a lot.Virtual machine related
"In-depth Understanding of Java Virtual Machine 2nd Edition"
A very excellent and rare domestic masterpiece , systematically introduced the Java virtual machine and related tools, and gave some tuning suggestions.Concurrent Programming
"Java Concurrent Programming in Practice"
Java concurrency classic, everyone has a copy Needless to say, The system comprehensively introduces Java concurrency, how to design data structures that support concurrency, and how to write correct concurrent programs"Practical Java High Concurrency Programming"
This new work by a Chinese author is smooth and easy to read, and the content is more up-to-date than the previous one.Design Pattern
"Head First Design Pattern"
For newcomers, a book written in Java called "Head First Design Pattern" "First Design Pattern", it is enough to know what design pattern is.redis related
"Redis Practical Combat"
This book introduces the five data types of Redis in a simple and easy way, and The usage of Redis is demonstrated through multiple practical examples. In addition, the book also describes the optimization methods and expansion methods of Redis. It is a rare reference book for learning and using Redis.《Redis Design and Implementation》
Redis is one of the NoSQL that has been particularly popular in recent years. Looking at various books at home and abroad, none of them can provide an in-depth analysis of the internals of Redis. "Redis Design and Implementation" is the first of its kind. "Redis Practice" and "Redis Design and Implementation" are both written by the same author, but the actual practice is the author's translation of the foreign English original. The latter is written by the author himself, and you can choose it based on the situation.Tool Category
"Maven Practical Combat"
Personally, I feel that the writing is quite good, from the basics to the application, it is very It is complete and suitable for beginners. Of course, it is also suitable for people with a little experience. After reading this book, it is enough for daily work.Performance Optimization
"The Authoritative Guide to Java Performance"
Compared with the tuning bible many years ago, it is more detailed More in-depth and closer to the current JDK. You can pick some knowledge points from it and answer Java tuning interview questions.Unit Testing
"Effective Unit Testing"
Different from those advanced books that often use BDD, they focus on how to Writing "good" and maintainable unit tests and showing them to the team can save a lot of saliva.Programmer Personal Cultivation
"Refactoring: Improving the Design of Existing Code"
"Code The Way of Tidiness"
"Professional Qualities of Programmers"
Although the above three books are old books, they are all worth reading. You can bring it with you when you collect orders with full discounts.Health
"Programmer's Health Guide"
The blogger plans to buy a copy of this, and is now sitting down to write an article After a long time, I felt pain in my waist and burst into tears. The blogger wants to live a few more years. If I really want to improve myself, I feel that the most important thing is to first learn and master the three knowledge points of JVM, concurrency, and network. These three are the foundation, and all subsequent frameworks, middleware, etc. are related. They are all based on these three knowledge points. After learning these three knowledge points, you can quickly master other knowledge, new frameworks, etc. Continue to share with everyone, a must-read book for advanced seniors or architects.1. HeadFirst Design Pattern
If you don’t know about design patterns, you can start with this book or illustrated design patterns.
I also bought a copy of "Java and Patterns" with more than 600 pages. I stopped reading after reading two chapters, it was boring and boring, and I forgot about it after reading it. I just read the "HeadFirst Design Pattern" in its entirety, and I wasn't really impressed after reading it. I only knew that there were these design patterns, and I had a rough idea of what they were used for. I only really understand design patterns when I read the source code. If you want to truly understand design patterns, it's better to read more source code.
2. In-depth analysis of spring source code
This book mainly analyzes spring loading configuration files, parsing tags, and generating beans. IOC, AOP source code explanation, JDBC integration, SpringMVC source code analysis, etc.
This book is a bit boring to read. You must download the source code and combine it with the analysis of the previous part of the book. Reading the book alone is not effective. Students who have not read the source code should proceed with caution.
3. Refactor and improve the design of existing code
Everyone recommends this book, and I will recommend it too. I want your code to be written better. Well, the logic is clearer, easy to read and has been expanded, so buy one. In fact, I haven't even read this book in its entirety.
4.Effective Java
This book has nothing to say, it is a classic and a must-read.
5. Large website technical architecture
Mainly starts from the basic theory of the characteristics of large website architecture and architectural goals (high performance, high availability, scalability, etc.). It seems relaxing and enjoyable, take the time to read it again. I strongly recommend everyone to buy a copy.
6. In-depth analysis of the inside story of java web technology
A must-read for advanced web development. When I was reading the tomcat source code, I started from the tomcat chapter of this book.
7. Aha Algorithm
This book was recommended to me by a friend. It is really interesting and the algorithm is written in a simple and easy-to-understand manner.
8. From Paxos to Zookeeper distributed consistency principles and practices
Reading this book is my understanding of two-phase commit (2pc) and three-phase distributed transactions Submit (3pc) and have a deeper understanding. CAP theory BASE theory. Gained a deep understanding of distributed consistency. When I saw zookeeper, I was a little confused and said I couldn't understand it. After recently reading "Architecture Adventure: Writing a Distributed Service Framework from Scratch", I have a deeper understanding of zookeeper. If you have time, re-read Zookeeper related content.
9. This is the search engine
recommended by my colleagues. After reading this book, I have a deeper understanding of the inverted index. You can also easily implement a very simple search engine yourself. The knowledge related to crawlers is also introduced. It's basically at a theoretical level.
10. Large website system and Java middleware practice
11. Cervical Spondylosis Rehabilitation Manual....
Thank you all for reading, I hope you can gain more from the book.
This article is reproduced from: https://qxlxi.blog.csdn.net/article/details/81783115
Recommended tutorial: "java video tutorial"
The above is the detailed content of The most comprehensive advanced Java learning book in history (recommended). For more information, please follow other related articles on the PHP Chinese website!