El documento describe los patrones de diseño de software. Explica que los patrones de diseño son soluciones a problemas comunes de diseño que pueden ser reutilizadas. Identifica varios tipos de patrones como patrones de creación, estructurales, de comportamiento y de concurrencia. Resume brevemente algunos patrones específicos como el adaptador, decorador, estado, singleton e iterador.