post Image
【随時更新】Go言語(golang)の実用的なパッケージと㊙情報 2017/12/17

【随時更新】Go言語の実用的パッケージと㊙情報

Ateam Hikkoshi Samurai Inc. Advent Calendar 2017 17日目です。
本日はエイチーム引越し侍の新卒1年目、Webエンジニアの@nrainieroが担当します。

Go言語の初心者で
いろんな情報を集めているので
ここにまとめていきたいと思います。

随時更新なので、
Go言語に興味のある方は、いいね、ストックをしておくと良いと思います!:relaxed:

参考になる記事・サイト

実用的なパッケージ一覧

※ ★はgithubのスターの数です(2017/12/17時点)

パッケージ依存管理

node.jsで言うpackage.jsonみたいな役割のもの

◆dep ★6351star

Glide から dep に移行せよ
とあるのでこれを使っておけば大丈夫だと思います

◆glide ★5865star

一世代前の依存管理ツール
今から管理するならdepを使いましょう

webフレームワーク

◆Gin ★13552star

https://github.com/gin-gonic/gin
フルスタックのフレームワークで
Martiniの40倍の速度らしいです笑

◆beego ★13339star

https://github.com/astaxie/beego
フルスタックのフレームワークで
ORMなどもサポートしています。

◆Martini ★9816star

https://github.com/go-martini/martini
お酒の名前のフレームワーク
公式の日本語のドキュメントがあります!

◆Revel ★9187star

https://github.com/revel/revel
MVCのフルスタックフレームワーク
Railsみたいなもんかな。
コードを編集した際に自動コンパイルしてくれたり、devモードがあったりと開発しやすそう。

◆Echo ★8914star

https://github.com/labstack/echo
軽量で高速なwebフレームワーク
カスタマイズしやすい

◆iris ★8524star

https://github.com/kataras/iris
最速のフレームワークと謳っています!!
ドキュメントが充実しているのでおすすめです。

◆Goji ★3351star

https://github.com/zenazn/goji
よく知らない。。

◆goa ★2474star

https://github.com/goadesign/goa
個人的におすすめ★
APIフレームワークでバリデーションなどに気を使わず
ロジックだけに専念できるようになっている。
swaggerUIなどと連携するとすごく良い!!
だが、クセが強い。。

httpクライアント

◆http

https://golang.org/pkg/net/http/
標準パッケージ
HTTPクライアントの処理が簡単に書けます!

websocket

◆websocket

https://godoc.org/golang.org/x/net/websocket
標準パッケージ

◆websocket ★4702star

https://github.com/gorilla/websocket
標準と名前がかぶってるが
外部パッケージ

フォーム系

◆binding ★630star

https://github.com/mholt/binding
バリデーションに使える

DB

◆mysql ★3355star

https://github.com/go-sql-driver/mysql
mysqlのドライバー

◆pq ★3355star

https://github.com/lib/pq
PostgreSQLのドライバー

◆redigo ★3816star

https://github.com/garyburd/redigo
redisも扱えます!

◆migrate ★1820star

https://github.com/mattes/migrate
DBマイグレーションツール
Go project以外にも使えます!

◆goose

https://bitbucket.org/liamstask/goose/
DBマイグレーションツール

◆xo ★1403star

https://github.com/xo/xo
DBのスキーマーをGoの自動でstructにしてくれる便利なもの

サーバー

◆golang-stats-api-handler ★155star

https://github.com/fukata/golang-stats-api-handler
サーバーのシステム情報を取得できる
ZabbixやMunin用のプラグインもある

設定ファイル読み書き

◆encoding/json

https://golang.org/pkg/encoding/json/
jsonファイル

◆toml ★1736star

https://github.com/BurntSushi/toml
tomlファイル

◆yaml ★1727star

https://github.com/go-yaml/yaml
yamlファイル

◆xml

https://golang.org/pkg/encoding/xml/
xmlファイル

◆ini ★759star

https://github.com/go-ini/ini
iniファイル

ロギング

◆logrus ★6144star

https://github.com/sirupsen/logrus
ログをいい感じに出してくれる
json形式でも出してくれる。

クエリビルダー

◆squirrel ★1317star

https://github.com/Masterminds/squirrel
SQLジェネレーター

ORM – オブジェクト関係マッピング

goの構造体とdbを紐付けてくれるものです。

◆gorm ★7320star

http://jinzhu.github.io/gorm

GoのORMで迷ったらこれを使っておけば良さそうです!
githubのstar数で見ても1強!!

◆gorp ★2629star

https://github.com/go-gorp/gorp
SELCT文で生SQLを書かないといけないらしい。。。

◆xorm ★2629star

https://github.com/go-xorm/xorm
使ってる人がちらほらいるイメージがあります

◆genmai ★146star

https://github.com/naoina/genmai
玄米。。。

◆awesome-go ★26078star

https://github.com/avelino/awesome-go
パッケージ一覧リスト!

最後に

Ateam Hikkoshi Samurai Inc. Advent Calendar 2017 17日目いかがでしたでしょうか。
間違ってたり、追加したほうがいい情報があれば教えてくれと幸いです!
明日はエイチーム引越し侍@hironeyさんがLINE@とGoogleHomeについて書いてくれます。
お楽しみに。

追伸

株式会社エイチーム引越し侍では、一緒にサイト改善をしてくれるWebエンジニアを募集しています。エイチームグループのエンジニアとして働きたい!という方は是非、以下のリンクから応募してください。
皆様からのご応募、お待ちしております!!

エイチームグループ採用サイト(Web開発エンジニア職)


『 Go 』Article List
Category List

Eye Catch Image
Read More

Androidに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

AWSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Bitcoinに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

CentOSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

dockerに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

GitHubに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Goに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Javaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

JavaScriptに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Laravelに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Pythonに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Rubyに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Scalaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Swiftに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Unityに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Vue.jsに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Wordpressに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

機械学習に関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。