Which book do you recommend to learn Java concepts and practices deeply ?
What’s your experience level? How much experience do you have with Java and other programming languages?
A good beginners book is Head First Java, 3rd Edition [Book].
To learn Java specific concepts and practices Effective Java, 3rd Edition [Book] is a good book.
Depending on your specialization it can also be helpful to read up on design patterns, because they’ll show up in a lot of Java code. The original book is still a good read: Design Patterns: Elements of Reusable Object-Oriented Software [Book]. Otherwise there’s also a Head First version, if you enjoy that style: Head First Design Patterns, 2nd Edition [Book]
To learn concepts deeply I like Modern Java in Action: Lambdas, streams, functional and reactive programming, but I haven’t finished it, as I broke off from it to work on Scala.
@bobahop Cool, I’ll have a look at that. I read a book on lambdas back when Java 8 came out and it really benefited me, but I just can’t remember which one I read, so I didn’t know what to recommend to people for that. :D
I bang this drum every once in a while, but I recommend joining ACM.org as a student or professional member. For the annual fee you get access to Percipio, which includes books by Manning, Apress, Packt, No Starch, and others. It also includes content from Pluralsight. I find it to be a good value for the annual fee.