Software Design Patterns Implementation of important software design patterns using Java. In the src folder, the following design patterns are implemented: Abstract Factory Pattern Adapter Pattern Decorator Pattern Observer Pattern Proxy Pattern Singleton Pattern State Pattern Strategy Pattern