Design Patterns Warehouse Demo About What are Design patterns? reusable "solutions", applied during Software design. Not specific solutions, but general "guidelines". Why should we use one? to solve these problems: code duplication code bloat untestable code Rigid, brittle design Inheritance abuse unmaintainable code technical dept The repo contains a branch for each section.