The design of dobby is modular:
Databaseobject acts as a black box with onlyexecutemethod exposed- Each API service is defined in a separate module and only interacts with the database via this method
- Each API service is pluggable, meaning
dobbycan run all or some of the services - as needed. Databasehas swappable back-ends (e.g. usingsqliteinstead ofdobby's engine is possible)
note: this doesn't really make sense, since Rust is not an OOP language, but the university course I'm doing this for doesn't really care.

