answer each question in this section with enough detail that the instructor understa 4962416
Answer each question in this section with enough detail that the instructor understands that you understand the term or concept.
1. (6 points) Contrast the following terms:
a. Class vs. Interface
b. Composition vs. Inheritance
c. Design vs Programming
2. (5 points) What are “design patterns”? Describe what they are, where they come from and how they are used.
3. (8 points) What is meant by the following design principle and why is it important? Name a pattern that is based on this principle and explain how. “Encapsulate what varies”.
4. (5 points) Why does the Observer pattern use an interface for the Observer object? What benefit does this bring to a design? What design problem does it solve?
5. (5 points) Explain the similarities and difference between Factory Method and Abstract Factory patterns.
6. (5 points) Explain how the Command pattern enables “undo” functionality in an application. Use an example in your explanation.
7. (5 points) Explain the similarities and differences between Adapter and Façade patterns.
8. (5 points) What is a “Hook”? How does the Template Method pattern make use of hooks? Given an example.
9. (6 points) Name three patterns that MVC includes. Describe how these work together to accomplish the goals of the MVC pattern.