In this chapter we'll spend some time thinking, as programmers, about what we name and how we name it. First: What? The things we name most often while writing code are:
C++ namespaces and Java packages
This list is by no means exhaustive—there are other, higher-level entities we'll give meaningful names to: states of a state machine, parts of messaging protocols, database elements, application executables, and so on. But these six are enough to start with.