diff --git a/LearnErrorHandling.md b/LearnErrorHandling.md new file mode 100644 index 00000000..77e810ed --- /dev/null +++ b/LearnErrorHandling.md @@ -0,0 +1,21 @@ +This page links to resources about error handling in Go. + +## Getting Started + +- Read [Effective Go: Errors](https://golang.org/doc/effective_go.html#errors) +- Code [A Tour of Go: Errors](http://tour.golang.org/methods/8) and do the [exercise](http://tour.golang.org/methods/9) +- Study [The Go Programming Language Specification: Errors](http://golang.org/ref/spec#Errors) +- Study [Package errors](http://golang.org/pkg/errors/) +- Study [func fmt.Errorf](https://golang.org/pkg/fmt/#Errorf) + +## Standard Practice + +- Read [Why does Go not have exceptions?](http://golang.org/doc/faq#exceptions) +- Read [Error handling and Go](http://blog.golang.org/error-handling-and-go) +- Read [Go by Example: Errors](https://gobyexample.com/errors) +- Read [golang/go/wiki: Errors](https://github.com/golang/go/wiki/Errors) + +## Advanced Topics + +- Read [Why is my nil error value not equal to nil?](http://golang.org/doc/faq#nil_error) +- Read [Defer, Panic, and Recover](http://blog.golang.org/defer-panic-and-recover) \ No newline at end of file