Шаблоны проектирования в разработке программного обеспечения представляют собой повторимые решения типичных проблем проектирования. Они помогают программистам понимать, изменять и создавать код, а также взаимодействовать друг с другом. В документе описаны основные типы шаблонов: порождающие, структурные и поведенческие, с примерами реализации на Ruby и Python.