Introduction
Imagine you have many different tools in a toolbox, but you need to know which tool to use for each job. Computers face a similar problem with files: they need to know what kind of file they are dealing with and which program should open it.