This book requires to do some actual work and to read and understand the code examples. And that is a really good thing. There is a lot of good advice in this book. I don't necessarily agree with everything Uncle Bob writes, but that is something that he covers right at the start of the book.
The choice of Java as language for the examples is perhaps not ideal, because it is so verbose. But that is not a good enough reason for me not to give 5 stars.