Goのエラーハンドリング
from 型を用いたError Handling
nullかもしれないことを型以外のもので表現する
Goはエラーハンドリングについて言及されることが多いので、参考になる記事が多い
Goの言語のデザイン
Go言語におけるエラーハンドリングを今一度振り返る - Eureka Engineering - Medium
http://golang.rdy.jp/2017/12/20/go-fact/
エラーハンドリングの処理は強制されない
処理を書くかどうかはプログラマ次第。コンパイラは別に怒るわけではない
errorが返ってきてもそれをどう処理するかは利用者に委ねられている
なのでerrcheckという静的解析ツールがあったりする
https://twitter.com/y_taka_23/status/1181517309283688448
https://www.yunabe.jp/docs/golang_pitfall.html#メソッド内でレシーバthis-selfが-nil-でないことをチェックすることに意味がある
code:go
f, err := os.Open("/tmp/hogehoge.txt")
if err != nil {
log.Fatal(err)
}
Goでは例外処理もnullableも多値で表現する
呟いたら教えていただいた
code:go
x, ok := mymap"mykey"
疑問は、これ、利用者はどうやってnullableだって気付くのか?ってこと
Error Handlingのときと同様に、エラーハンドリング処理を書くかどうかは利用者に委ねられる
Goのその辺の話とか
https://www.yunabe.jp/docs/golang_pitfall.html
てか、型自体はnull安全なの?そういえば
ちがう ref