- SOLID principles and Design Patterns.
- All implemented in Java, with the theoretical background and language-independent.
- Single Responsibility Principle
- Open Closed Principle
- Liskov's Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle- Strategy Pattern
- Observer Pattern
- Command Pattern
- Iterator Pattern
- Template Pattern and Null Object Pattern
- Visitor Pattern- Singleton Pattern
- Factory Pattern
- Builder Pattern- Decorator Pattern
- Facade Pattern
- Adapter Pattern- Model-View-Controller (MVC) Model - Application in Java with MVCFree Software.

