- 次世代言語9[Haskell Rust Kotlin TypeScript Dart]
795 :デフォルトの名無しさん[sage]:2018/04/08(日) 14:13:54.54 ID:aL28Ce5R - >>792
戻り値のエラーを握りつぶされると、不適切な状態で動き続けるから、デバッグが困難になると思うんだが。 例外の握りつぶしでも同じ事だけど、構文としては、例外の握りつぶしの方が見つけやすいと思うけどね。catchブロックでしか細工できないから。 goだと正常な返り値の隣に,_つけるだけで握りつぶせちゃうから、見つけづらいんじゃないかな。
|
- 次世代言語9[Haskell Rust Kotlin TypeScript Dart]
798 :デフォルトの名無しさん[sage]:2018/04/08(日) 14:26:14.02 ID:aL28Ce5R - 返り値でエラーを判別するコードだと、本来やりたいことの次にほぼ必ず、エラー判定処理が入るから、可読性が低いんだよね。
昔、C使ってた頃は、そういうところが嫌でたまんなかったし、ひどいのになると主要な処理が全部、条件部分で行われてて、if文の連なりしかないコードとかみたし。 正常系をリーダブルに書くには、例外の方が気持ちいいなと思うよ。
|
- 次世代言語9[Haskell Rust Kotlin TypeScript Dart]
800 :デフォルトの名無しさん[sage]:2018/04/08(日) 14:35:54.54 ID:aL28Ce5R - 後、最近のIDE使ってると、todoをコメントに入れとけば、あとでそれを、まとめて見直せるから、取り敢えず、try-catchして、catchのところはtodoにしといて、まず正常系を一通り買いてから、あとで異常系に対処するっていうワークフローにできるのが、例外の利点かなと思う。
|
- 次世代言語9[Haskell Rust Kotlin TypeScript Dart]
803 :デフォルトの名無しさん[sage]:2018/04/08(日) 14:51:49.81 ID:aL28Ce5R - goは本格的には使ったことないけど、無視はできないんで、いろんなコードを見てるんだけど、今のところの感想としては、goって、書き手の思考を遮らないというところに重きを置いてる印象。
deferなんか、なんか開いたらあとで閉めるけど、忘れない内にその処理を予約しとこうみたいな発想かな。 自分は書くことより読むことを重視するタイプなんで、あまりgoには向いてないなあと思ってる。
|