Software Development as book about Java? Okay, the Extreme
element is making head way but this is ridiculous. Acknowledged,
Robert C. Martin's book is not about learning the syntax and grammar
of Java at all. For that go to our other Java
book references . But Martin's book is certainly about the rubrics
and semantics of design when using Java.
Because Java has a single point of inheritance, no allowance for
friend classes, and greatly constrained multiple inheritance through
interfaces only, design and more importantly redesign of Java classes
and systems is a non-trivial art. Martin's book addresses these issues
head on. We learn to identify patterns of design - classic class
interrelationships with an eye towards maximizing their flexibility
while retaining desirable properties such cohesion and stability.
Nearly a dozen design object principles then are used to evaluate
different patterns of Java classes and packages. And everywhere
there are both UML diagrams and actual code examples to see the
designs in real test cases. Other books cover the principles or
patterns or best practices in Java; but none combines all three in
such a lucid and clearly defined fashion.