Chapter 10 Maximization of Code Reuse with Generics