😇

Golangの勉強40時間くらいのまとめと感想

2021/09/22に公開

Golang 学習のモチベーション

  • Server side で 静的型付けな言語で書けるようにしたい
  • Unit test を高速に実行することで生産性を高めたい
  • App Engine で実運用して server の費用を限りなく0にしたい
    • Golang - GAE の高速スピンアップ
  • AI による Code生成は静的型付け言語の方が上手くいきそう
  • CLI アプリを配りたい
  • (おまけ)
    • 並行処理を楽に書きたい
      • gRPC が活発なイメージがある
    • I love Google

やったこと

  • スターティングGoを読んでみた
  • web API の CRUD 実装
  • RDB ORM の選定(SQLBoiler)
    • DB から データがmodel がgenできて、ドメイン固有の色が少ない
    • 実践投入できそうなものが見つかった
    • GORM という ORM には表現力の限界があった
  • unit test
    • feature のロード
    • setup teardown の実行
    • リクエストの送信(E2E)

これからやりたいこと

  • Python(fastapi)では上手くいかなかった openapi 定義からのコード生成

特に気にいったところ

  • 現段階ではコンパイルをほぼ意識しない
  • 機能を捨ててコンパイル速度を上げているのが合理的な感じがする
  • エディタとの連携○
    • 勝手に import 句を書いてくれる
    • 実行前に間違いに気付ける
  • 良質な技術記事が多い
  • tagという機能を使えば、構造体1つでDBmodel変換もシリアル化も活用できる

つらかったところ

  • ライブラリの使い方などの記事はあまり見つけられない
  • 新しい書籍があまりない

Golang 経験者の好き嫌いを集めてみた

Discussion