This is a Survey API built to show how to create a decoupled and well-defined architecture, using TDD (Test Driven Development) as work methodology, Clean Architecture for tiering distribution of responsibilities, always following SOLID principles and, whenever possible, applying Desing Patterns to solve common problems. It is based on Rodrigo Manguinho's course at Udemy.
- Single Responsibility Principle (SRP)
- Open Closed Principle (OCP)
- Liskov Substitution Principle (LSP)
- Interface Segregation Principle (ISP)
- Dependency Inversion Principle (DIP)
- Don't Repeat Yourself (DRY)
- Composition Over Inheritance
- Small commits
- Factory
- Adapter
- Composite
- Decorator
- Dependency Injection
- Abstract Server
- Composition Root
- TDD
- Clean Architecture
- DDD
- Conventional Commits
- GitFlow