This project is just an real world example to understand and tell these in GO;
- How to organize folders
- How to test go project
- Dependency management
- Error handling
- RESTful APIs
- Serving in Docker
To solve the some above problems have been used these Approaches;
- Uncle Bob's "The Clean Architecture"
- Andrew Gerrand's, "Error handling and Go"
- SOLID design principles
Sources
- https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html
- http://manuel.kiessling.net/2012/09/28/applying-the-clean-architecture-to-go-applications/
- https://github.com/jaijiv/handybid
- https://medium.com/@benbjohnson/standard-package-layout-7cdbc8391fc1
- https://talks.golang.org/2014/organizeio.slide#1
- http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod
- https://scotch.io/bar-talk/s-o-l-i-d-the-first-five-principles-of-object-oriented-design
- https://blog.golang.org/error-handling-and-go