Variations on Alex Edwards's Snippetbox web-app
Special areas of focus:
- Create meaningful constraints (types, scope (application-level vs request-level), etc)
- Enable meaningful access (global variables, dependency injection, closures, interfaces, request-scoped context)
- Idiomatic patterns (Router, Middleware Handler, Application Handler)
- Major interfaces (http.Handler, io, fmt)
References: Request Handling in Go: https://www.alexedwards.net/blog/a-recap-of-request-handling
Specific areas to review
- Templates
- Interfaces
- JSON Marshaling/UnMarshaling
- Routers
- State Management
- Pointers vs Values