Паттерны появились потому, что многие разработчики искали пути повышения гибкости и степени повторного использования своих программ. В предлагаемой книге описываются простые и изящные решения типичных задач, возникающих в объектно-ориентированном проектировании. Авторы излагают принципы использования паттернов проектирования и приводят их каталог. Найденные решения воплощены в краткой и легко применимой на практике форме. Во-первых, здесь демонстрируется роль паттернов в создании архитектуры сложных систем. Таким образом, книга одновременно решает две задачи. Издание предназначено как для профессиональных разработчиков, так и для программистов, осваивающих объектно-ориентированное проектирование. Во-вторых, применяя содержащиеся в справочнике паттерны, проектировщик сможет с легкостью разрабатывать собственные приложения.