This chapter has covered a great deal of ground. You learned about the different kinds of program bugs: syntax errors, runtime errors, and logical errors.
Then we moved on to techniques for finding bugs generally.
We discussed how to test your programs, and I explained why testing a program is important.
So what’s it all about, Alfie? (Or Austin?)
As you become a more sophisticated programmer, you’ll find it increasingly important to have a deep understanding of bugs and their causes. The more complicated and interesting the program, the more important it is to rigorously test your programs and to implement an architecture that anticipates exceptional conditions.
By working through this chapter, you’ve laid the foundation for good programming habits in these areas.