Design Patterns Learn, read about & practice software design patterns - general, reusable solutions to commonly occurring problems. Practice Problems