by Simon Harrer, Jörg Lenhard, Linus Dietz
Become a Java Craftsman in 70 Examples
by Simon Harrer, Jörg Lenhard, Linus Dietz
Improve your coding skills by comparing your code to that of expert programmers so you can write code that’s clean, concise, and to the point: code that others will read with pleasure and reuse. Get hands-on advice to level up your coding style through small and understandable examples that compare flawed code to an improved solution. Discover handy tips and tricks, as well as common bugs an experienced Java programmer needs to know. Make your way from a Java novice to a master craftsman.
This is the book I’ve been waiting for since starting with intermediate Java programming
courses. Without dwelling for too long on the basics, Java by Comparison
leads you step by step to new insights on good coding practice. Instructive
examples compare the do’s and dont’s and make it easy for beginners to get the
key points. Here, the book shines and shows it’s based on long-term classroom
experience. Luckily, the book can be read as a textbook but is also useful as a
reference. I’m looking forward to using it in my classrooms. Are you sure your
style is perfect? Get it!
– Dr. Guido Wirtz
Professor for CS/Head of Distributed Systems Group, University of Bamberg
I wish Java by Comparison had been there when I was getting started with programming,
It’s like a mentor, looking over your shoulder, and patiently helping
you get your programming skills up to the next level.
– Achim Weimert
CTO, wOndary LTD
Java by Comparison is a wonderful read for all those who want to level up their
Java skills. It contains the essence of Effective Java and Clean Code, updated
with JUnit 5 and Java 8.
– Johannes Schwalb
Java Architect, uniVersa Versicherungen
The definitive guide for students to bridge the gap between the novice and the
– Dr. Oliver Kopp
Postdoc, University of Stuttgart
Java by Comparison is a well-crafted quick read with good, succinct examples
updated with the latest Java 8 styling. Highly recommended for Java developers
a few years into their career.
– Ashish Bhatia
I think Java by Comparison hits a sweet spot between providing useful content
and not trying to be too much. It is an easier and more directly applicable read
for junior developers than Effective Java (the best Java book). Experienced developers
will be seen nodding in agreement and likely learn a couple things along
the ride. This will be required reading for developers.
– Sebastian Larsson
Competence Team Lead, Cybercom Sweden
To become a software craftsman, you need to practice, practice, practice. Java by Comparison can accompany you during those practices. With the comparison
approach, bad code to better code, it can serve as a reference during your practice
– Zulfikar Dharmawan
Java by Comparison presents a number of examples on how to improve your
coding skills and serves as a shortcut for beginners or intermediate programmers
to become experienced programmers. The book in a sense provides a lower-level
version of design patterns focusing on code structure rather than on higher-level
– Dr. Martin Blom
Associate Professor, Karlstad University
Java by Comparison is a great read if you are looking to take your Java knowledge
up another notch. I wish I could have read this book or something similar when I
first started with Java; it explains a lot of topics easily that I had to learn the hard
way. It is a must-read if you want to go from a good programmer to a great one.
– Ramaninder Singh Jhajj
Big Data Engineer, Betsson Group
Well organized and full of examples, Java by Comparison can help you whether
you are a student or a developer with years of experience.
– Emanuele Origgi
Android Software Engineer, Funambol, Inc.
With any language, once you’ve mastered its syntax, the next step is to learn how
to use it idiomatically. Whether you’re a beginner who has just started with Java
or a seasoned Java developer who started out using one of its many earlier versions,
I consider Java by Comparison a great step to become proficient in using
– Stefan Tilkov
Release: P1.0 (2018-03-20)
This book is a useful companion for anyone learning to write clean Java code. The authors introduce you to the fundamentals of becoming a software craftsman by comparing pieces of problematic code with an improved version to help you to develop a sense for clean code. This unique before-and-after approach teaches you to create clean Java code.
Learn to keep your booleans in check, dodge formatting bugs, get rid of magic numbers, and use the right style of iteration. Write informative comments when needed, but avoid them when they are not. Improve the understandability of your code for others by following conventions and naming your objects accurately. Make your programs more robust with intelligent exception handling and learn to assert that everything works as expected using JUnit5 as your testing framework. Impress your peers with an elegant functional programming style and clear-cut object-oriented class design.
Writing excellent code isn’t just about implementing the functionality. It’s about the small important details that make your code more readable, maintainable, flexible, robust, and faster. Java by Comparison teaches you to spot these details and trains you to become a better programmer.
You need a Java 8 compiler, a text editor, and a fresh mind.
Dr. Simon Harrer is a father, consultant, developer, and teacher who’s always looking out for new technologies, frameworks, and ideas. His friends call him a clean code evangelist, but in a good way.
Dr. Jörg Lenhard is a developer, teacher, and researcher. He has been teaching programming in Java for almost a decade and enjoys contributing to open source software. Jörg has a track record of computer science research and experience as a professional software developer.
Linus Dietz is a research assistant at the Technical University of Munich. His passion lies in developing elegant algorithms and advancing open source software.