Golang + glide + vim の環境構築

Golang の test について書いたけど、そういや導入について何も書いていなかった。せっかくなのでまとめていきます。

Mac でのGolang の環境構築と Golang のパッケージ管理ツール glide について書きます。

また、vim で Golang を書くときの設定なども書いていきます。

Golang の環境構築

brew でさくっと Golang をインストールしてください。

(私は zsh を使っているので) .zshrc に Golang のソースを保存するディレクトリと、実行ファイルを入れておきたいディレクトリに GOPATH と PATH を通しましょう。

もちろん、それらのディレクトリは事前に自分で作っといてね。

PATH を通したら Golang の環境構築は終了です。

何かしら Golang のパッケージを install したときに GOPATH 以下に、src、bin、pkg というディレクトリが作られます。

ちなみに Golang のパッケージを install するときは以下のコマンド

Golang の Web Framework 、echo を install したい場合は以下のようにコマンドを打てばいいです。

なお、Golang での開発プロジェクトは、GOPATH/src の中に保存してください。

go get したあとは go のコードに

と宣言すれば、パッケージが使えるようになります。

glide の利用

glide は Golang の vendor package manager です。
パッケージ管理だと思えばいい(はず)
glide を利用することで、プロジェクト内に様々なパッケージがインストールできます。
また、パッケージのバージョンを固定することもできるので、複数人で開発するときパッケージの管理なども簡単にできます。

まず glide を利用するためには brew で install してください。

プロジェクトのディレクトリ内で

を実行すると、そのプロジェクト内で使用されているパッケージの一覧が glide.yaml に保存されます。そして、

すると、使用しているパッケージとそのパッケージと依存関係のあるパッケージ全てがプロジェクト内にインストールされます。

プロジェクト内に vendor というディレクトリが作られ、その中にパッケージが install されます。
(.gitignore などで vendor も git の管理対象外にすることを忘れないでね)

tree コマンドで表示(brew にあるよ!)
glide init, glide install 後のプロジェクトのディレクトリ構造

ちなみに echo パッケージを go get 、glide get してきた場合、glide get (vendor)が優先的に読み込まれる仕様です。

Golang を書くときの vim の設定

vim で Golang を書くときは、vim-go を入れることをオススメします。
go get で vim-go をいれましょう。

そして、.vimrc 内には以下のコマンドを記述してください。

Golang の syntax highlight が有効になるのと、保存時自動的に import にパッケージを補完してくれます。
また、Golang の記述ルールに則ってソースが自動的に整形されるようになります。
(他にも実はなにかあるのかもしれない)

Golang の test について

新人研修で iOS アプリケーション開発のため swift 触ったり、API サーバを構築するために Golang 触ったりと、もはや Unity どこいったというぐらいいろんなことやっています。どうも Masa です。

はじめてのうぇぶあぷりけーしょんかいはつということで、うぇぶあぷりけーしょんの仕組みからまず勉強しないといけないという事態。

Golang で Test を書くときどのように書いたらいいのか調べたのでまとめてみた。

Read more

【連載第5回】複数人で1つのUnityプロジェクトを管理するには

現在 ThinkIT 様で連載をしています。

今回はバージョン管理システム(Git)で、Unity プロジェクトの管理方法について書きました。

また、複数人で Unity プロジェクトをバージョン管理する場合に注意することをまとめました。

複数人で1つのUnityプロジェクトを管理するには – ThinkIT http://thinkit.co.jp/story/2015/09/02/6362

Read more

UE4 を使用するためのオススメグラボって?

UE4 グラフィックボード おすすめ の検索で訪問者がそれなりにいるっぽいので、ちょっとまとめてみようかと。

Unreal Engine 4 の懸念
http://www.masakoha.com/archives/210

Unreal Engine 4 のシステム要件を振り返り

http://www64.atwiki.jp/ue4wiki/pages/36.html
(公式に見当たらなあったので UE4 wiki より)
Read more

Cocos2d-x Tutorial 1つ消化してみました

Cocos2d-x 公式の Manual にある User Tutorial-Create your own traditional puzzle from scratch を消化していました。 絵合わせパズルゲームですね。 http://www.cocos2d-x.org/wiki/User_Tutorial-Create_your_own_traditional_puzzle_from_scratch 消化してみたけど、なんというかスッキリしない。 Cocos2d-x の仕組みが頭の中で上手く処理しきれていない感じ。 Read more

WordPress と格闘

今日は国際通りで Ingress をするつもりが、ApheR Records のサイト構築でずーっと時間を取られました。

html 直書きはさすがに・・・
ってなわけで、ApheR Records でも WordPress で再構築。
http://www.apherrecords.com/

ついでに学科サーバからさくらサーバに乗り換えました。
スタンダードプラン、年額5000円程度。
理由としては、CDを売るってなったときにお金が絡むので相当厄介になりそう。
あとは、卒業しても活動する予定なので、WordPress 導入ついでに移るかーってなわけで。

2時間ぐらいかけて再構築して、そして、いろいろカスタマイズをしようと php をいろいろいじると・・・

サイトがホワイトアウト

復旧させようにもさせきれなかったので、また最初から構築・・・

今日は WordPress 2回インストールしてサイト再構築しましたとさ。

みなさんもバックアップをとってから、phpはいじりましょうね(泣)