This document discusses common design patterns and SOLID principles. It provides code examples and analysis of the Single Responsibility Principle, Open Closed Principle, Liskov Substitution Principle, Interface Segregation Principle, and Dependency Inversion Principle. It also summarizes the Factory Method, Strategy, Abstract Factory, and Bridge design patterns and analyzes how they relate to the SOLID principles.