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

Go を使い始めて 2 ヶ月の学び / My first two months with Go

Go を使い始めて 2 ヶ月の学び / My first two months with Go

Avatar for Daisuke Garaike

Daisuke Garaike

August 21, 2026

More Decks by Daisuke Garaike

Other Decks in Programming

Transcript

  1. Daisuke Garaike • プログラマー ◦ ハンディ株式会社 ◦ at 浜松町 •

    サーバーサイド Kotlin, アジャイル, 自動テスト, プロダクト開発 2
  2. きっかけ • とある PR • enum の switch による分岐に対して default

    を入れる提案 • Java 系から来てる自分にとっては驚き 5
  3. Java 系: コンパイル • Kotlin: when ◦ 式として使えば網羅性がコンパイルエラー • Java:

    switch ◦ 式として使えば網羅性がコンパイルエラー • enum, sealed interface と相性良し • いずれも default をつけないことで効果を発揮 6
  4. Java 系 • Maven, Gradle • Xml, Groovy, Kotlin •

    プラグイン, タスクグラフ, バージョンカタログ...... • テストも後から入れる 11
  5. DB テストが遅そう • mysql の起動に時間がかかってそう ◦ GHA だししょうがない? • go

    test おもろい ◦ パッケージレベルでの並列化 ◦ t.Parallel() によりパッケージ内でも並列化 ◦ ファイル単位ではなくパッケージ単位 16
  6. まとめ • 3 つとも同じ構造だった ◦ 言語仕様は薄く保つ ◦ 同梱ツールが豊富 ◦ 代わりに「ツールの挙動を知っているか」が生産性

    を左右する • Java 系は逆で、コンパイラが強くツールは自作前提 • どちらが良いという話ではなく、 保証をどこに置くかの設計思想の差 18