Description
Book SynopsisIn Software Mistakes and Tradeoffs you'll learn from costly mistakes that Tomasz Lelek and Jon Skeet have encountered over their impressive careers. You'll explore real-world scenarios where poor understanding of tradeoffs lead to major problems down the road, to help you make better design decisions. Plus, with a little practice, you'll be able to avoid the pitfalls that trip up even the most experienced developers.
Software Mistakes and Tradeoffs teaches you how to make better decisions about designing, planning, and implementing applications. You'll analyse real-world scenarios where the wrong tradeoff decisions were made, and discover what could have been done differently. The book lays out the pros and cons of different approaches and explores evergreen patterns that will always be relevant to software design.
Code performance versus simplicity. Delivery speed versus duplication. Flexibility versus maintain ability—everydecision you make in software engineering involves balancing tradeoffs. Often, decisions that look good at the design stage can prove problematic in practice.This book reveals the questions you need to be asking to make the right decisions for your own software tradeoffs.
Trade Review“I can saywith confidence that 100% of software developers ask themselves at least onequestion addressed in this book.” Nelson González
“The code examples are good enough that even if you don't have experience with Java—you can still understand what the authors aretrying to convey.” John Henry Galino
“Tomasz Lelek and Jon Skeet are here to guide developers through the minefield of software engineering.” Gilles Lachelini
“Reading this book will make you wiser and turn youinto the Yoda of the Software Engineering biz!” Gregory Varghese
“If you need a book to learn how to think like a better programmer...then this is the book.” Alex Saez
“This book is vital for every developer, from beginner to advanced, to improve your code quality and resolve common problems.”Andres Sacco
“This book holds valuable information and tips every programmer should know before doing bigger software projects.” RobertTrausmuth