《Head First Java》
Some people say this book is not suitable for novice programmers? In fact, this book is very suitable for novices who have a little experience to read, of course, it is also suitable for us to review java knowledge.
PS: just started programming, the best way is to learn by watching videos.
Java core technology Volume 1 + Volume 2
It is recommended to read it after having some Java foundation. The introduction is more in-depth and comprehensive. It is highly recommended.
There are many contents in these two books. It takes a lot of time to read them all. I suggest that you use them to consolidate your knowledge points or as reference books. They are two good books for you.
Java programming ideas (4th Edition)
Most people call it the Bible in the Java field, but it is not recommended for beginners to read, which is a bit of dissuasion. It’s better to read with a little foundation.
This book has a lot of content, and it’s a little boring, but it’s authoritative. It is suggested to use it as a reference book.
Java performance authority Guide
Hope to have more good books on Java performance optimization!
O’Reilly family book is an introduction to performance tuning. Performance tuning is a necessary knowledge for every Java practitioner.
This book describes the actual combat content is very good, especially the JVM tuning. Of course, the disadvantages are obvious, and the content is a little old. There are few such books on the market. This book is not suitable for beginners. It is recommended to read after mastering the Java language. In addition, before reading, it’s better to take a look at Zhou Zhiming’s in depth understanding of Java virtual machine.
The beauty of Java Concurrent Programming
This book is very suitable for learning java multithreading. This book’s explanation is very easy to understand, the author from the concurrent programming foundation to the actual combat is handy.
Besides, the author of this bookGadoThey will often publish various technical articles on the Internet. This book is also the result of Addo’s years of precipitation in the field of multithreading! The content of the book is basically combined with code explanation, very convincing!
Practical Java high concurrency programming
This is my second book to recommend, which is more suitable as an introduction / Advanced Book of multithreading. The content of this book is also a combination of theory and practice. The explanation of each knowledge point is relatively easy to understand, and the overall structure is relatively clear.
This book is open source by several big companies (such as ALI)https://github.com/RedSpider1/concurrent
In order to write the book “in simple terms, Java multithreading”, several authors read a lot of books and blogs on Java multithreading, and then combined with their experience summary, demo examples and source code analysis, finally formed the book.
The quality of this book is also excellent! Like the authors! This book has a unified typesetting rules and language style, clear expression and logic. And after the first draft of each article is written, the authors will review each other. When it is merged into the main branch, all members will review it again, and finally revise the whole article three times.
Here is just one book and a free tutorial on JVM parameter tuning.
Deep understanding of Java virtual machine (3rd Edition)
Hope that there will be more such high-quality books in China! come on.
This book describes it in one sentenceThe fighters in the domestic books are really excellent!
The third edition of this book came out at the end of last year, adding a lot of practical content, such as the principle analysis of ZGC and other new generation GC. At present, Douban has a high score of 9.6, so I won’t say much about it!
Whether you are interviewing or you want to learn more about Java, you can’t do without this book. This book not only needs to be read, but also needs to be read several times. It’s all dry goods. There are many practical contents in it. You’d better practice one.
Here’s oneJVM parameters [memory]Tutorial, great!
Now most companies use Java 8 at least. Java 8 is a milestone version, providing many useful new features, such as lambda, streaming processing and so on.
This book is a good choice to learn the new features of Java 8, including lambda, stream and functional programming. The consistent style of the actual combat series allows you to quickly get started and apply it.
Reconstruction_ Improving the design of existing code
Programmer must see!
The book of Martin Fowler, the world’s top and national treasure, can be said to be one of the most classic basic books in the field of software development.
This book is every programmer must read, and need to read many times!
《Effective java 》
Programmer must see!
It is also a national treasure level book in Java field, very classic. This book mainly introduces many practical experience rules in Java programming. These experience rules cover the solutions to the problems that most developers face every day. This article can be very practical to help you write more clear, robust and efficient code. Each rule in this book appears in the form of a short, independent essay, which is further illustrated by example code.
Programmer must see!
Every programmer must read a book, many practical examples in the book, can teach you to write better code.
Finally, two related documents are recommended
- Alibaba java development manual ：https://github.com/alibaba/p3c
- Google Java programming style guide: http://www.hawstein.com/posts/google-java-style.html
The way of software design
Myth of man and moon
This paper mainly describes the basic law of software development: a job that takes 10 days to finish cannot be finished by 10 people in one day!
A book worth reading. At first glance, it doesn’t feel like a technical book. This book is of great significance to the standardization of modern software, especially the development of complex software.
Domain Driven Design: how to deal with software core complexity
This classic work of driver design in this field has been recommended by all kinds of people.
Spring reality (5th Edition)
It is not recommended to read as an introductory book. If you want to get started, you can find some Chinese books or videos to watch. This book is just like an overview of spring. There are only some basic concepts and examples, covering all aspects of spring, but they are not deep enough. As the author wrote on the last page, “learning spring is just the beginning.”.
Spring 5 Advanced Programming (5th Edition)
The new features of spring 5 are introduced in detail, which is not good. In addition, I feel that the translation of the whole book is a bit bad and a bit boring. There are many contents in the book, so it is suggested to use it as a reference book.
Spring boot programming ideas (core)
It’s a little wordy, but the principle is clear.
Spring boot parsing is not suitable for beginners. The book is very thick, and the explanation of knowledge points is too wordy and procrastinating. However, this book explains the internal principles of springboot very clearly.
A more general book, you can simply take a look.
Spring boot practical school
The version of spring boot 2.0 + used in this book is relatively new. The whole book is written in the form of “knowledge points + examples”.
In addition, there are a lot of dry goods in this book, and the author has not forgotten to explain some important basic knowledge in the process of paying attention to actual combat.
If you want to learn spring boot, I still recommend this book.
Netty in action
This book can be used to get started with netty. After chatting from bio to NiO, we will introduce in detail why there is netty, why netty is easy to use, and the important knowledge points of netty.
This book basically introduces some important knowledge points of netty, and basically explains them in the form of actual combat.
The road to netty: follow the case study of netty
In depth netty must see!
It’s all about practice cases of using netty, such as memory leaks. If you feel that your netty has completely started, and you want to have a deeper understanding of netty, I recommend you to read this book.
Introduction and practice of netty: imitating wechat im instant messaging system
A small book of high quality!
Through a framework based on netty im core system as a guide, take you to learn netty. The quality of the whole booklet is still very high, even if you don’t have the experience of using netty.