● https://talks.golang.org/2012/splash.slide
● https://talks.golang.org/2012/splash.article
● Goは何を期待されている言語なのか知る
○ Googleは何に問題を感じてGoを作ったのか?
○ Googleは何を解決するためにGoを作ったのか?
Go at Google: Language Design in the Service of Software Engineering
14
● 複雑性は明瞭性を失う例
○ No free, Only GC
○ 単純な並行処理
■ “go”と書くだけ
■ no ID
■ ステータス
Simplicity is Complicated
16
Simplicity is Complicated より
Slide 17
Slide 17 text
● https://blog.golang.org/toward-go2
● Go2に至る仕様策定プロセス
● Proposalは誰でも見れる
○ Go 2 Draft Designs
● Go Teamは意見を求めている
Toward Go 2
17
英語が難しかったら Gopher Slackの #japan などでも議論してます
Slide 18
Slide 18 text
● Go2もGoのMissionやValuesは何も変わらない
● The goals we have for Go today are the same as in 2007.
● Our goal for Go 2 is to fix the most significant ways Go fails
to scale.
Toward Go 2
18
Slide 19
Slide 19 text
● https://blog.golang.org/gopher
● Gopherの生い立ち
● Go's New Brandの中でも
厳格な(?)仕様が
The Go Gopher
19
Go Brand Book より
Slide 20
Slide 20 text
● https://go-proverbs.github.io/
● Rob Pike氏の格言集
● Gopher Slackのロード時にも見れたりする。
● その格言が出た発表はYouTubeで確認することができる
● 言語設計者が何を解決したくてこの仕様にしたのか
● 何を意図してこの仕様にしたのか
Go Proverbs
20
Slide 21
Slide 21 text
● https://dave.cheney.net/practical-go
● Dave Cheney氏のブログ記事のオススメリンク集
● Functional optionsパターンや`T`型メソッドと`*T`型メソッドの使
いわけなど
● ロギングやエラーハンドリングも含めて開発で一度は悩むポイン
トを解説してくれている
Practical Go
21
Slide 22
Slide 22 text
Go Wayな
設計・実装
22
/
Slide 23
Slide 23 text
● https://golang.org/doc/effective_go.html
● Goの特徴的な言語仕様の効果的な使い方
● 名前付きの返り値はいつ使うと効果的か etc...
Effective Go
23