People ask me what books I recommend to learn Java. I have a few books that I thoroughly recommend, but they are not aimed at beginners.
Prior to writing my book, I re-read some beginner books and came to the conclusion that they would confuse more than help. They didn't help people become productive fast.
I wrote a book that gets testers started fast, is easy to follow, and has examples related to their work. I wrote a book I can recommend.Buy The eBook Buy The Paperback Download a PDF Sample Book Support Page
Learn to code differently
Throughout my career I have written thousands of lines of Java code, but I have rarely had to compile the code into an application. Yet, when we learn Java, one of the first things we learn is ‘javac’ and the ‘main’ method.
Most of the code I write is wrapped up in a JUnit @Test method.
Everytime I have taught Java to testers or other people on the team, I start with a JUnit @Test method and show them how to run tests from the IDE.
Testers, and other people on the team use java differently, and I think we need a different order and approach to learning Java than the developers coding production applications.
Helps you learn fast:
- Tutorial chapters walk you through step by step, explaining as we go
- Introductory chapters to help you install the tools
- Teaches a Test Driven Development approach to coding so you learn to code like the pros
- Exercises encourage you to experiment and learn to use the tools effectively
- IDE productivity tips taught as you work to make your coding fast
- All source code provided online
- All exercises have answers so you can compare your approach
- Doesn’t matter if you use Windows or Mac, the book and code support both
- All the example code in the repo works, you can see from the build history
- All code for Java For Testers is tested on Windows, Mac and Linux (JDK 1.7, 1.8 and OpenJDK 1.7)
- Code examples shown throughout making it easy to follow and learn as you work through the examples
Who is this book for?
This book is for people who want to learn Java. Particularly people on a team that want to learn Java, but who aren’t going to be coding the main Java application i.e. Testers, Managers, Business Analysts, Front End Developers, Designers, etc.
If you already know Java then this book may not be for you.
It is aimed at beginners.
I cover ‘just enough’ to get people writing tests and abstraction layers, but I don’t really go down into a lot of detail. For example, I cover the basics of Inheritance, but don’t really cover Interfaces in detail. I explain the concept of Interfaces, because we need to know it to understand Collections, but not how to write them.
Why? Because I want to cover enough to get people started, and working. I don’t want to overload them. Once they are on their way, and have gained some experience. Then, when they are ready, they should have the basic knowledge to let them understand the additional concepts.