Upgrade to Pro — share decks privately, control downloads, hide ads and more …

今改めて読み直したい Go基礎情報 その1 / read again awesome go article

今改めて読み直したい Go基礎情報 その1 / read again awesome go article

golang.tokyo #25の登壇資料です。
https://golangtokyo.connpass.com/event/133581/

文中のリンクは以下のブログ記事で紹介しています。
https://budougumi0617.github.io/2019/06/20/golangtokyo25-read-again-awesome-go-article/

Yoichiro Shimizu

June 18, 2019
Tweet

More Decks by Yoichiro Shimizu

Other Decks in Technology

Transcript

  1. • 清水 陽一郎 @budougumi0617 ◦ Backend Engineer ◦ Go /

    Ruby • Blog ◦ 毎週書いてる • コウペンちゃんが好き 自己紹介 2
  2. Simplicity - 徹底的な簡潔性 • GoのMission ◦ Creating software at scale

    ◦ Running software at scale • システムは成長する際に、デザインの簡潔性を通してのみ、 安定し、安全であり、首尾一貫したままでいられる 7 Go's New Brand の Mission, プログラミング言語 Go まえがき より
  3. • 複雑性は明瞭性を失う例 ◦ No free, Only GC ◦ 単純な並行処理 ▪

    “go”と書くだけ ▪ no ID ▪ ステータス Simplicity is Complicated 16 Simplicity is Complicated より
  4. • https://blog.golang.org/toward-go2 • Go2に至る仕様策定プロセス • Proposalは誰でも見れる ◦ Go 2 Draft

    Designs • Go Teamは意見を求めている Toward Go 2 17 英語が難しかったら Gopher Slackの #japan などでも議論してます
  5. • 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
  6. • https://go-proverbs.github.io/ • Rob Pike氏の格言集 • Gopher Slackのロード時にも見れたりする。 • その格言が出た発表はYouTubeで確認することができる

    • 言語設計者が何を解決したくてこの仕様にしたのか • 何を意図してこの仕様にしたのか Go Proverbs 20
  7. • https://dave.cheney.net/practical-go • Dave Cheney氏のブログ記事のオススメリンク集 • Functional optionsパターンや`T`型メソッドと`*T`型メソッドの使 いわけなど •

    ロギングやエラーハンドリングも含めて開発で一度は悩むポイン トを解説してくれている Practical Go 21
  8. • https://amazon.jp/dp/4873117526 • APIやMongoDBを使ったアプリ開発の本 • 監訳者の鵜飼さんの「Goらしいコードの書き方」が付録 • 実践的な処理のリファクタリング例・思考が読める ◦ Twitter

    StreamやDB操作など • Contextを使ったリファクタリング例もある Go言語によるWebアプリケーション開発(書籍) 28 Go 1.7以前の書籍なので x/net/context pkgのContextを使っている