O'Reilly logo

Quality Code: Software Testing Principles, Practices, and Patterns by Stephen Vance

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Practices Supporting Software Craftsmanship

The question then becomes: How can we constantly increase the likelihood that our software is correct from the start? First, let computers do what computers do best, the rote mechanical activities and detailed analyses that are time-consuming and error-prone for humans. The ways we can leverage automated code quality tools leads to a taxonomy of software hygiene.4

4. Thanks to Zee Spencer for his suggestions in this area.

• Style: Whitespace, curly braces, indentation, etc.

• Syntax: Compilation, static analysis

• Simplicity: Cyclomatic complexity, coupling, YAGNI5

5. “You aren’t going to need it” from extreme programming. [XPI, p. 190]

• Solution: Runtime, correctness, whether it works, TDD, BDD

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required