Every book prefers to work rather than stay on a shelf
We hold the opinion that if developers want to be the best in their area,
they should read only books of highest quality. Therefore, Intelrate
doesn't recommend "intermediate level" tutorials or "guides for dummies".
Life is too short to spend time on retraining, that's why our readers will find here exclusively
classical computer science masterpieces. Our advise for beginners is to start from these
books in order to gain really indispensable knowledge. And, of course, each experienced
programmer and architect should be familiar with ideas covered by books represented
in appropriate category.
For most part questions from the tests are based on topics contained in the books below.
Category:
Refactoring: Improving the Design of Existing Code
Refactoring: Improving the Design of Existing Code shows how refactoring can make object-oriented code simpler and easier to maintain. Today refactoring requires considerable design know-how, but once tools become available, all programmers should be able to improve their code using refactoring techniques. Besides an introduction to refactoring, this handbook provides a catalog of dozens of tips for improving code. (Amazon Review)
Design Patterns: Elements of Reusable Object-Oriented Software
This book isn't an introduction to object-oriented technology or design... It's a book of design patterns that describe simple and elegant solutions to specific problems in object-oriented software design.... Once you understand the design patterns and have had an "Aha!" (and not just a "Huh?" experience with them), you won't ever think about object-oriented design in the same way. You'll have insights that can make your own designs more flexible, modular, reusable, and understandable--which is why you're interested in object-oriented technology in the first place, right? (From the Preface)
Agile Software Development, Principles, Patterns, and Practices
This comprehensive, pragmatic tutorial on Agile Development and eXtreme programming, written by one of the founding father of Agile Development teaches software developers and project managers how to get projects done on time, and on budget using the power of Agile Development. The book uses real-world case studies to show how to plan, test, refactor, and pair program using eXtreme programming. It focuses on solving customer oriented system problems using UML and Design Patterns. (From the Back Cover)