Sarcasistブログ

Sarcasistのメンバーが技術ネタ、運営ネタ、サービスに関するを記事を投稿するブログ

Go を始めた話

はじめまして。
サーカシストでエンジニアみたいなことやっています ほにゃにゃ(@honyanya) と申します。
サーカシストのプロダクトで Go を採用したときのお話しをします。

なんで Go ?

blog.sarcasist.com

こちらの記事にもあります通り、元は勉強の集団です。
みんなほぼ触ったことないし、なんか良い感じに盛り上がってるし、面白そうだし触ってみよう!っていうノリで使い始めました。

Gopherくんもかわいいですよね

f:id:honyanyas:20180129131809p:plain
画像は公式ブログより

勉強方法

A Tour of Go
を使用しました。

日本語版はこちら

A Tour of Go を使って写経をしていた形になります。

検討事項

開発するに当たって下記項目をどうしようかという話しが挙がりました。

フレームワーク

フレームワークをどうするかという話が挙がりましたが、
特にスクリプト用途で定期的に実行させるだけだったので、
今回はフレームワークは使わず、ゴリゴリ書いていきました。

ORM

DB を使用するのは避けられなかったので、必然的に ORM もどうするか話しに挙がりました。
調べて候補に出たのは下記です。

  • GORM
  • gorp

ぱっとみどちらも使われてはいそうでしたが、GORMの方が情報量多いということで、
今回の採用となりました。

依存関係管理ツール

一番悩んだところです。

  • Godep
  • Vendoringt
  • Glide
  • dep

複数該当するものがありましたが、
dep が将来的に公式なものになりえるということだったので、
今回は dep を使うことにしました。

まとめ

フレームワーク -
ORM GORM
依存関係管理ツール dep

現状、上記のような形で進めることになりました。
ふたを開けてみるとけっこう標準な形になったのでしょうか?
今回採用しなかったものも、何か別の機会に使ってみたいなと思いました!