Apple's SSL/TLS bugの件 #golang
golangだとそもそも括弧強要されるし、gofmtでインデントが強制されるのでわりとすぐに気づくのかもと思ったのでメモ。
そもそもエラーになる:
package main import "fmt" func main() { var err error = nil if err != nil goto fail goto fail fmt.Println("Hello, playground") fail: fmt.Println("Hello, fail") }
http://play.golang.org/p/lcgZDh-ji4
修正&gofmtでこうなる:
package main import "fmt" func main() { var err error = nil if err != nil { goto fail } goto fail fmt.Println("Hello, playground") fail: fmt.Println("Hello, fail") }
http://play.golang.org/p/hinPttq13L
気づくかな。
goto文をつかうこと自体は悪く無いと思う。
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (111件) を見る
- 作者: スティーブマコネル,Steve McConnell,クイープ
- 出版社/メーカー: 日経BP社
- 発売日: 2005/03/26
- メディア: 単行本
- 購入: 44人 クリック: 1,166回
- この商品を含むブログ (284件) を見る
- 作者: スティーブマコネル,Steve McConnell,クイープ
- 出版社/メーカー: 日経BP社
- 発売日: 2005/03/26
- メディア: 単行本
- 購入: 16人 クリック: 193回
- この商品を含むブログ (160件) を見る