DBから PrimaryKey / Uniqueキーを取得してきて、FindByUserIdのような便利機能は自動生成コード #sig_ns
2018-05-12 15:24:46ORMは使わなかった 汎用ライブラリを使うとinterface{}となる箇所が出てきて型があいまいになる クエリビルダーは利用 Masterminds/squirrel 自動生成を多用 #sig_ns
2018-05-12 15:25:27管理ページみたいなところで、1000件ずつ見たいなページング処理あるが、そういうのも自動生成で作ってた #sig_ns
2018-05-12 15:25:46ファイルをバイナリに詰め込むpackage。 ファイルを1個にまとめるようなpackageありますが、これも使いませんでした。 dockerのimageでやっているので、ファイル一個にする必要ないシー #sig_ns
2018-05-12 15:27:39パッケージ化 jessevdk/go-assets jteeuwen/go-bindata これらは使わず、Dockerイメージのビルド時に含めるようにした 本番環境もDocker(ECS) #sig_ns
2018-05-12 15:28:26ここからはチームでの開発です。 レビュー:コードは他4人すべてのレビューを通らないとマージされない #sig_ns
2018-05-12 15:28:26特殊な書き方ない、シンプルな文法 読みにくいコードはほぼかけない レビューする人が多くても開発の速度を下げない #sig_ns
2018-05-12 15:29:21コードレビュー、チーム全員がレビューしてOKだったらマージ シンプルな文法、gofmt/golint/govetがあるので開発スピードは速い #sig_ns
2018-05-12 15:29:51フレームワークやORMを呼んでいると、その使い方のDocを読んでいたくない ORMの気持ちをかんがえたくない 僕はGoの事だけ考えたい。非常に楽しい #sig_ns
2018-05-12 15:30:59フレームワークやORMを使わないようにしたことで、Go標準ライブラリとアプリのことだけを考えて開発ができる フレームワークのDocument読んだりORMの気持ちを考えたりしなくてよい #sig_ns
2018-05-12 15:31:28まとめ ・Goは楽しい ・標準パッケージで問題ない ・チームが大きくても開発のスピードは落ちにくい #sig_ns
2018-05-12 15:31:50自動生成について、どうやっていますか? sqlをパースしてきて、そこからGoのコードを生成しています。 github.com/schemalex/sche… #sig_ns
2018-05-12 15:34:00「4人のレビューを通らないとマージされない」 普通に gitでPRしています。ちゃんとPRに色々書いて投げましょう… #sig_ns
2018-05-12 15:37:20チームのレビュー4人通らないとマージされないルールは、プロジェクトの最後まで守られましたか?特に忙しくなると、そういった余裕はなくなると思うので… はい。最後まで守られました。コツというわけではないのですが、自動生成されたコードについては軽くしか見てません。 #sig_ns
2018-05-12 15:38:26ただ 自動生成されたコード部分に対するテストコードをちゃんと書いているか? についてはキチンとみてました。 #sig_ns
2018-05-12 15:39:37定義ファイルを変更すると、それをきっかけにサーバー・クライアント側のリポジトリに、自動生成コードを適応したbranchが切られる #sig_ns
2018-05-12 15:43:07今日の講演、すごい面白い内容ばかりで良かった。 ElixirとかGoの話は、言語の話ではなく、それを選んだ背景・思想が出てきて非常に良かったですー。 fluentdのお話も、良い事悪い事の話があってすごい良かったですねー #sig_ns
2018-05-12 15:45:35