This question has already been answered:

There are many good books on Java: Thinking in Java, Effective Java, Java Concurrency in Practice etc.

I would like to read something more in-depth. What could you advise? For myself, sketched a number of topics that seem interesting to me:

  • 1) JVM internals: device, performance, GC
  • 2) device server applications / servlet containers. how requests are processed, how servlets are created, and so on. something like Apache Tomcat from the inside, for example.
  • 3) classloaders
  • 4) some books useful for java web-development - protocols can go deep, sockets can, etc.

Reported as a duplicate by Oceinic , Vladimir Glinskikh , Nick Volynkin , Visman , Aries 11 Oct '15 at 6:51 .

A similar question was asked earlier and an answer has already been received. If the answers provided are not exhaustive, please ask a new question .

    2 answers 2

    An excellent set of books that not only need to be read, but it would also be great to have on hand.

    1. Joshua Bloch "Effective Java"
    2. James Gosling, Bill Joy, Guy Steele, Gilad Bracha "The Java Language Specification"
    3. Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea "Java Concurrency in Practice"
    4. Doug Lea "Concurrent Programming in Java: Design Principles and Pattern"
    5. Charlie Hunt, Binu John "Java Performance"

    In addition, there are many books on a specific topic (generics, IO, NIO, etc., etc.).

    Books also cite other sources that are likely to be useful.

    But not a single java. In terms of web development, it would be nice to learn more about HTTP. In the sense of developing distributed and highly loaded systems, knowledge of the network operation features becomes useful. In terms of working with data, relational and NoSQL databases.

    You can continue for a very long time. It is better to proceed from specific tasks, since The knowledge gained can be consolidated in practice.

    And of course you should not forget about blogs on topics of interest.

    • Thank you, and Java Performance - did you hear there mainly about Oracle tools, is that interesting, or is it really a fundamental book? - KutaBeach

    It is never certain to get acquainted with the performance nuances in J.J. Bloch - Java. Effective programming (Java first-hand) - 2002. " Servlet is very good "Bruce W. Perry. Java servlets and JSP. Collection of recipes . " And, too, it never hurts to at least familiarize yourself with the templates in "Stephen Stelting - Applying Java Templates," especially if you have the idea to take the seigneur qualification exam.

    • The first edition of Effective Java is outdated. It is better to read the second immediately. - a_gura
    • Thank you, is Stelting better than that famous GoF Patterns book? - KutaBeach
    • In GoF Pattertns on the pros, examples are given, and the book is rather general in nature. And with Stenling, patterns specific to Java are described. Plus, there are such templates in GoF that Stenling definitely will not have due to differences in languages ​​(C ++ vs. Java). - Raskilas
    • And I thought that GOF Patterns is in Java ... clearly, thanks! - KutaBeach