LoginSignup
2
3

More than 5 years have passed since last update.

Go・Revelのセットアップ

Last updated at Posted at 2015-09-10

0. はじめに

最近、Go言語を使って開発を始めたので、インストールなどの方法をまとめてみました。WEBフレームワークとしてRevelを選んでみました。

内容

  • Go言語のインストールと動作確認
  • GoのWEBフレームワークであるRevelのインストールと動作確認
  • vimの設定(おまけ)

想定読者

  • Go言語初心者
  • 他の言語、フレームワークでの開発経験あり

1. Goのインストールと動作確認

インストール

Homebrewを使っている場合、コマンドラインで、

$ brew install go

でインストールできます。

動作確認

インストールし終わったらホームディレクトリ等で hello.go というファイルを作成し以下のように記述。

hello.go
package main

import "fmt"

func main(){
    fmt.Printf("Hello, world\n")
}

コマンドラインで以下のように打ってHello, worldが表示されればOK。

$ go run hello.go
# Hello, world

参考になる記事

2. GOPATHを指定

GOPATHとは

Goのソースコードや実行可能ファイルなどを保存するためのディレクトリをGOPATHという環境変数として指定する必要がある。
僕はとりあえずホームディレクトリ配下に置いていて、現在のところ問題は起きてないです。

設定

zshを仕様している場合~/.zshrcに以下のように記述する。

$ export GOPATH=$HOME/.go
$ export PATH="$PATH:$GOPATH/bin"

とした後にコマンドラインで、

$ source ~/.zshrc

でこの設定を読み込む。

参考になるQiitaの記事

3. Revelのインストールと動作確認

ここからは実際にGo言語でアプリケーションを作る準備をしていきます。RevelはGo言語のWEBフレームワークです。

Revelのインストール

コマンドラインで、

$ go get github.com/revel/revel

と打つと、Revelをインストールできます。インストールし終わったらコマンドラインで、

$ revel

と打って、以下のように表示されたら成功。

~
~ revel! http://revel.github.io
~

# ...

サンプルアプリの作成

アプリを以下のコマンドで作る。

$ revel new test_app

ディレクトリ設定

上記のコマンドをどこで打っても、作成されたアプリはGOPATH以下のsrcディレクトリ配下に作られる。

自分の好きなディレクトリで操作したいのであれば、以下のコマンドで好きなディレクトリにソフトリンクする。
http://www.zontheworld.com/linux/ln.html

$ ln -s GOPATH/src/test_app your_dir

サーバーの立ち上げ

設定したディレクトリで、

$ revel run tes_app

としてサーバーを立ち上げ、

localhost:9000

にアクセス。

It works!と出ていれば成功。

4. エディタ(vim)の設定

Go言語では、インデントはスペースではなくタブを使うことを推奨しており、エディタの設定が必須です。
僕は業務ではエディタとしてvimを使っているので、vimの設定について書きます。

NeoBundle

vimの設定は色々と方法がありますが、僕は結局、NeoBundleを使って'vim-go'をインストールして使いました。
NeoBundleの導入としては以下の記事が参考になります。

設定

vimに以下のように記述しました。NeoBundleに関するコードは割愛。

NeoBundle 'fatih/vim-go'

# NeoBundleに関するコード

exe "set rtp+=".globpath($GOPATH, "src/github.com/nsf/gocode/vim")

let g:go_highlight_functions = 1
let g:go_highlight_methods = 1
let g:go_highlight_structs = 1
let g:go_highlight_operators = 1
let g:go_highlight_build_constraints = 1

以上です。おつかれさまでしたー。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3