6 Functions
Functions are one of the cornerstones of programming—but not because there’s a technical need for them. We could program without functions, if we really had to. But functions provide a number of great benefits.
First, they allow us to avoid repetition in our code. Many programs have instructions that are repeated: asking a user to log in, reading data from a particular type of configuration file, or calculating the length of an MP3, for example. While the computer won’t mind (or even complain) if the same code appears in multiple places, we—and the people who have to maintain the code after we’re done with it—will suffer and likely complain. Such repetition is hard to remember and keep track of. Moreover, you’ll likely find that the code needs improvement and maintenance; if it occurs multiple times in your program, then you’ll need to find and fix it each of those times.
As mentioned in chapter 2, the maxim “don’t repeat yourself” (DRY) is a good thing to keep in mind when programming. And writing functions is a great way to apply the phrase, “DRY up your code.”