メンバーがGoの書籍を書いたよ!『Go言語アンチパターン42問』

今回はちょっと嬉しいお知らせです。

biliotechメンバーの「藤堂カイ」が、Go言語の書籍を書きました!

タイトルは『Go言語アンチパターン42問』です。

Goを書いていると、こんな経験はありませんか?

  • 「テストも通っているし、ちゃんと動いている。でも、なんとなく不安」
  • 「他の言語のクセのまま書いたら、レビューで指摘された」
  • 「どこがマズいのか、うまく言葉で説明できない」

この本は、まさにそんなモヤモヤを解消してくれる一冊になっています。


どんな本?

サブタイトルは「悪い例→なぜ→直し方で、実務の落とし穴を見抜く」。

Goの文法を一から順番に覚える入門書ではありません。

構文は正しく、テストも通り、一見問題なく動いているプログラムの中に潜む「壊れやすさ」や「読みにくさ」を見抜くための本です。

各問はこんな流れで進みます。

  1. まず問題を抱えたコード(悪い例)を見る
  2. 職場でこのコードを受け取ったつもりで、違和感を考える
  3. 何が起きるのか、なぜ危険なのかを仕組みから理解する
  4. 望ましい形(直し方)を確認する
  5. コードレビューで使える点検基準を押さえる

推奨ペースは1日1問。

全42問なので、少しずつ進めれば無理なく読み切れます。


こんな人におすすめ

  • Java、Python、PHP、C#、JavaScriptなどの開発経験があって、Goも書くようになった人
  • 構文は書けるけど、運用やコードレビューで迷いが出る人
  • 「なんとなくダメ」ではなく、改善点を言葉で説明できるようになりたい人

逆に、文法だけの入門書や、特定のフレームワークの使い方を探している方向けではないので、そこだけご注意ください。


中身をちょっとだけ紹介

全体は7部・14章・42問の構成です。

  • Part 1 Go思考法編:変数・スコープ・ゼロ値、Line of Sightと制御構文
  • Part 2 エラー設計編:errorを消さずに文脈をつなぐ、panic・recover・defer
  • Part 3 メモリ・ランタイム編:スライスの容量とメモリ確保、ポインタ・Escape Analysis
  • Part 4 設計・抽象化編:小さなinterfaceとGenerics、構造体・Package
  • Part 5 並行処理編:Race Conditionと同期、Channelとゴルーチンリーク
  • Part 6 本番運用編:context.Context、HTTPやJSONなど本番の境界
  • Part 7 品質・コードレビュー編:壊れにくいテスト、静的解析

さらに巻末には、総合課題(Final Challenge)、42問分のコードレビューチェックリスト、Modern Goのコマンド集も付いています。

コード例は87個、図は25枚。

文章だけだとイメージしにくいメモリ配置や処理の時間順も、図と表で確認できるようになっています。

コードはGo 1.27.2で動作確認済みとのことです。


書籍はこちら

Kindle本で、1,480円(税込)で発売中です。

KDPセレクトにも登録予定なので、Kindle Unlimitedを契約されている方は読み放題で読めます。

Go言語アンチパターン42問:悪い例→なぜ→直し方で、実務の落とし穴を見抜く(藤堂カイ 著)

Amazonで見る


おわりに

「動いているからOK」から一歩進んで、「変更に強く、安全なコードを見分けられる」状態を目指せる一冊です。

Goを仕事で使い始めた方や、コードレビューでもう一段レベルアップしたい方は、ぜひ1日1問から試してみてください。


メンバーのSNSアカウントはこちら

◆かいと:IT担当
X(旧Twitter)
Instagram