Includes down-to-earth examples and experience-driven insights, this expert guide teaches you practical techniques to improve abstraction and design, to write comprehensible code, and to build maintainable bug-free applications. -- Edited summary from book.