trying to capture the patterns from the headfirst. Simple examples with their documentation. Advantages and disadvantages of each pattern