はじめに
概要
Goを書くようになりそこそこ経ちました👨💻
これまでに読んできたWeb上のリンクをまとめました。随時更新します。
インプット集
入門〜初心者👶
プログラミング言語Go完全入門
大変お世話になった(なっている)スライドです。
今でも定期的に見返していますし、Goを始めたい方にはまず紹介しています。
Goへのヘイトに対する考え方
Goに対する批判は定期的に起こるのですが、キャッチアップしている言語が批判に合うと悲しくなりますよね🥹
言語仕様のシンプルさに由来する批判が多いように思うのですが、それに対する回答をひとつ持っておくと糧になると思います。
元JavaエンジニアがGoに感じた「表現力の低さ」と「開発生産性」の話もタメになりました。
今改めて読み直したい Go基礎情報
本記事で紹介されている「Go at Google: Language Design in the Service of Software Engineering」は特に見ておくと良いと思います。
Googleが開発の中で何を問題視していたのか、何をGoで解決しようとしたのかが書かれている。 Goをなぜ作ろうとしたのかを知ることでGoのゴールや言語思想を知ることができる
FAQ系🙋♂️
Goを学ぶときにつまずきやすいポイントFAQ
今までにGoでよく聞かれた質問とその参考リンク
Go 言語(Golang) はまりどころと解決策
Goらしいコードの書き方 / コード規約📝
Effective Go
以下では色んなスタイルガイドを貼っていますが、ひとまずEffective Goを読み、各論的に詰まったら参考にするみたいな考え方で良いのかなと思います。
スタイルガイド等
- Uber Go Style Guide
- GitLab - Go standards and style guidelines
- Clean Go Code
- Go Best Practices
- Go Codereview Comments
ランタイム寄りの知識🤖
Goならわかるシステムプログラミング
書籍化もしている「Goならわかるシステムプログラミング」のWeb版です。
自分は1版も2版も書籍で購入しましたが、GoをよりOSに近いところで考えるための足掛かりになります。
H.Sakiさんの記事
メチャクチャ凄すぎて毎度助けられてます...。
コンパイラ / 構文解析🐉
Go コンパイラのコードを読んでみよう
GoのためのGo
Goで何か作る👨💻
Golangでロードバランサーを実装する
Biscuit Code Reading
GoによるOS「Biscuit」のコードリーディング。
build-your-own-x
OSやエディタ、Git、ブロックチェーン等を様々な言語で作る方法をまとめた「車輪の再発明」リポジトリですが、Goについてもそれなりのトピック載っています。
後で分類する🚧