I must tell, that after going lightly through the table of contents, it seems very interesting. For example I especially appreciate devoting separate chapter to Readability, which is from my point of view very important and nevertheless often times neglected in software development by a lot of developers. Now to my question, I can see you're discussing time/memory efficiency of reference code manually by explaining concepts behind that, which i very much appreciate as it is very important basis and probably the best way how to understand that, despite that, I would like to ask if you also introduce in your book means of analyzing time/memory efficiency at runtime via some tools like VisualVM, ... ?
Edit: Maybe one additional question, do you also consult in your book some of the software development principles like SOLID, DRY, ... ?
in the book I mostly steer clear of specific tools, because they change often (new versions or new tools replacing old ones),
whereas the principles expounded in the book are (hopefully) long-lasting.
Regarding the software development principles you mention, I address Dependency Inversion/Injection in chapter 6.
As to the other principles, some (like Liskov's) are assumed as background info, and others (like Single Responsibility)
are easier to appreciate in the context of larger systems, compared to the small units that the book focuses on.
It's hard to fight evil. The little things, like a nice sandwich, really helps. Right tiny ad?