Good Code, Bad Code
Think like a software engineer
Practical techniques for writing code that is robust, reliable, and easy for team members to understand and adapt.
In Good Code, Bad Code you’ll learn how to:
Think about code like an effective software engineer
Write functions that read like well-structured sentences
Ensure code is reliable and bug free
Effectively unit test code
Identify code that can cause problems and improve it
Write code that is reusable and adaptable to new requirements
Improve your medium and long-term productivity
Save yourself and your team time
The difference between good code or bad code often comes down to how you apply the established practices of the software development community. In Good Code, Bad Code you’ll learn how to boost your productivity and effectiveness with code development insights normally only learned through careful mentorship and hundreds of code reviews.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the technology
Software development is a team sport. For an application to succeed, your code needs to be robust and easy for others to understand, maintain, and adapt. Whether you’re working on an enterprise team, contributing to an open source project, or bootstrapping a startup, it pays to know the difference between good code and bad code.
About the book
Good Code, Bad Code is a clear, practical introduction to writing code that’s a snap to read, apply, and remember. With dozens of instantly-useful techniques, you’ll find coding insights that normally take years of experience to master. In this fast-paced guide, Google software engineer Tom Long teaches you a host of rules to apply, along with advice on when to break them!
Write functions that read like sentences
Ensure your code stays bug-free
How to sniff out bad code
Save time for yourself and your team
About the reader
For coders early in their careers who are familiar with an object-oriented language, such as Java or C#.
About the author
Tom Long is a software engineer at Google where he works as a tech lead. Among other tasks, he regularly mentors new software engineers in professional coding best practices.
Table of Contents
PART 1 IN THEORY
1 Code quality
2 Layers of abstraction
3 Other engineers and code contracts
PART 2 IN PRACTICE
5 Make code readable
6 Avoid surprises
7 Make code hard to misuse
8 Make code modular
9 Make code reusable and generalizable
PART 3 UNIT TESTING
10 Unit testing principles
11 Unit testing practices