This session deals with dynamic code analysis. We talk about debugging, testing, profiling and tracing in Go.
Two main areas:
- program correctness
- program performance
The lecture focuses mainly on program correctness, while we will also deal with program performance in the hands-on part.
- Challenges of Distributed Systems
- Formal Methods
- Testing
- Tools: Debugging, Tracing, Profiling
- Go Web Programming chapter 9
- Debugging - the basics of Go debugging with delve*
- Unit Testing - how to write and run unit tests in Go*
- Profiling - benchmarks, profiling, and flame graphs!*
- Tracing - tracing Go programs for deeper understanding*
*From Francesc's go-tooling-workshop