These top Java programming books are very good Java books and I would say
best of lot. Whenever a programmer starts learning Java first question he ask
is "Which Java books should I refer for learning?", That
itself says, how important Java books are for programmers. Despite so much free
resource available in Java in terms of tutorials,
tips, blogs and code example,
Java books has there own place because of two reason :
1) They are written by programmers who are authority in subject
2)They cover the subject with more details and explanation.
These Java books are my personal favourites and whenever I get some time
I prefer to read them, though I have read many of them already, I always learn
something new when I read them again. They are kind of best Java books available today.
1) Head
First Java
Head First Java is the best Java book for any programmer who are new in both
programming and Java. The head first way of explanation is quite a phenomena
and I really enjoyed whenever I read there books. I found them most interesting
Java programming books for beginners but they are equally good for intermediate
as well. Head first Java covers essential Java programming knowledge about class,
object,
Thread,
Collection,
language feature like Generics,
Enum,
variable
arguments or autoboxing
etc. They also has some advanced section on Swing, networking and Java IO which
makes them complete package for Java beginners. This should be your first Java
book if you are learning from scratch.
2) Head
First Design Pattern
Head First Design Pattern is another top class Java book from Head First lab, I guess, this is so far
there best title. When I started reading this book back in 2006, I didn't much
about design
patterns in Java , how they solve common problems, how to apply design
pattern, what benefits they provide and all sort of basic things but after
reading this Java book I benefited immensely. There is first chapter on Inheritance
and Composition, which is simply fantastic and promote best practices by first
introducing problem and then solution. They also have lots of bullet points,
exercises, memory maps which help you to understand design patterns much
quickly. If you want to learn core
Java design patterns and Object
oriented design principle, this is the first Java book you should refer.
Head First design pattern is written by Kathy Sierra and team.
3)
Effective Java
Effective Java is one of the best or top Java books in my record and most enjoyable as
well. I have high regards for Joshua Bloch (writer of this book) for his
contribution in Java
collection framework and Java
concurrency package. Effective Java is best for seasoned or
experienced programmer who are well versed in Java programming and want to
sharp there skill by following programming best practices, Java
best practices and eager to listen from someone who is contributed in Java
development kit. Effective Java as book scores high on quality, content and way
of explanation. Reading this Java book is pleasant experience. Another
important point of Effective Java is Item based structure which breaks whole
book in small items and every Item is complete in itself, so you can read this
book while travelling or short duration as well. On contents Effective Java is
collection of Java programming best practices ranging from static
factories, serialization, equals
and hashcode to generics, enum and varargs and reflection.
This Java programming book almost cover every aspect of Java in slightly
different way then you are used to.
4) Concurrency
Practice in Java
Java Concurrency in Practice is another classic from Joshua Bloch, Doug Lea and team. Probably the best
Java book in Concurrency and multi-threading and one of the must read for core
Java developers. Strength of Concurrency Practice in Java are
1) This book is very detailed and capture minor details of
multi-threading and concurrency as well.
2) Focus, instead of focusing on core Java classes this book focus on
concurrency issues and problems like deadlock,
starvation, thread-safety,
race
conditions and then present ways to solve them using Java concurrency classes.
This book is excellent resource to learn and master Java concurrency package
and classes like CountDownLatch,
CyclicBarrier,
BlockingQueue
or Semaphore.
This is the biggest reason I like to read this Java book and read again and
again.
3) One more strong point of Concurrency practice in Java is No
nonsense Examples, examples in this book are clear, concise and intelligent
4) Explanation : book is good on explaining what is wrong and why its
wrong and how to make it right which is essential for Java book to succeed.
5) Java Generics and Collections
Java Generics and Collection
by Naftalin and Philip Wadler from O'Reilly is another great book on
Java, which I initially forgot to include in my list, but including it
now as requested by many readers. I personally like this book because of
its content of Generics and Collections, which is core areas of Java
programming language. Strong knowledge of Java Collections and Generics
are expected from any experienced programmer and this books help on
that area. It explains each of Collection interface e.g. Set, List, Map,
Queue and there implementation and compares how well they perform in
different situation. I really loved there comparison chart at the end of
each chapter.
6)Java
performance from Binu John
Another good Java book which is my personal favourite. As we are moving
gradually started from beginners level to intermediate and senior level. Java performance Book is all about performance monitoring, profiling and tools used
for Java performance monitoring. This is another, must read Java book, if you
are serious about performance in Java programming language. This is not a usual
programming book, Instead It provides details about JVM,
Garbage
Collection, Java
heap monitoring and profiling application. I lover there chapter on JVM
overview and its must read to learn about JVM in simple language. Just remember
this Java book is advanced in nature and expect that reader has experience in
Java. Beginners and intermediate programmer can also benefit from this book but
Its good to have some Java experience on your belt before reading this book. So
far best Java book on performance monitoring.
7) Java
Puzzlers
Java Puzzlers is another worth reading Java book from Joshua Bloch, this time with Neal Gafter. This
book is about corner cases and pitfalls in Java programming language. Java is
more safe and secure than C++ and JVM does good job to free programmer from
error-prone memory allocation and deallocation, but still there Java has
corner-cases which can surprise even experienced Java programmer. This Java
books presents such Java pitfalls and explains them in detail. A good Java book
if you love puzzles, You can even include many of these in core
Java interviews to check how deep there Java knowledge is. I don't rate it
as high as Effective Java and Concurrency
Practice in Java but still you can give it a go. In order to get
most of this Java book, tries to solve the puzzles by yourself and then look
into explanations to make your knowledge more concrete.
8) Head
First Object Oriented Analysis and Design
Another good book on Java programming and design principles from Head
First series. Head first Object Oriented Analysis and design book can be read in conjunction with Head First Design
patterns. This book focus on Object oriented design principles like favour composition over inheritance, programming
for interface than implementation, DRY etc. One part of learning Java is
writing good code and following best practices and this book is great in
educating programmers about them. knowledge gained from this book is applicable
to many object oriented programming language and will overall improve your
understanding of code and design principles.
9) Thinking
in Java
Thinking in Java book is written by Bruce Eckel
who is also author of Thinking in C++ and he uses his unique style to
teach Java concept. Many would agree that this is one of the best Java book and
strength of this books are there to the point and intelligent examples. This is
one of the complete book in Java and can be used as reference as well. There is
a chapter on Java
memory mapped IO from Thinking in Java which is my favourite. I would say this
is another Java book which demands space in Java programmer's shelf and must
read Java book for beginners, especially if you don't like Head First teaching
style and rather need a beginners Java book with plain old example style,
Thinking in Java is a good choice. It is detailed, matured and frequently updated.
This was my list of Top Java programming books and I would say best of
lot. I have read all the books, some of them I am still reading and couple of
them like Effective Java and Head First series, I have read couple of times.
Many programmer ask me about which books they start, which Java book they read
now. I hope you will find some good Java books in this collection.
No comments:
Post a Comment