読者です 読者をやめる 読者になる 読者になる

pixyzehn blog

iPhone App, Mac App, Programming, Web service, Tool, Evernote, etc

golangの設定とhello worldとかをやってみました

f:id:inagex:20140327130256p:plain


go言語ことgolangのhello worldとVimでの設定をやってみました。


なぜgo言語をやったのかというとGopherがかわいかったからです。

go言語とは?


以下wikiからの引用

Goはプログラミング言語のひとつ。Google社によって開発されており、設計にロブ・パイク、ケン・トンプソンらが関わっている。
主な特徴として、軽量スレッディングのための機能、Pythonのような動的型付け言語のようなプログラミングの容易性、などがある。Go処理系としてはコンパイラのみが開発されている。
発表当初はLinuxとMac OS Xのみしかサポートしていなかったが、2012年3月にリリースされたversion 1からはWindowsもサポートされている。また、2011年5月10日に公開された Google App Engine 1.5.0 でも、Go言語がサポートされている。


少し前からGoのことをいろいろ聞くのでどんなのだろうと思ってたのでやってみたというのが本音です。

設定とhello world


まずhomebrewと使ってGoをインストールしました。

brew install go


homebrewを使うと簡単にインストールできます。


f:id:inagex:20140327130937p:plain


/usr/local/bin/goにインストールされます。


f:id:inagex:20140327131217p:plain


goとコマンドを入力すると簡単な使い方が閲覧できます。


Vimを使った開発手法としてこちらを参考にしました。


Big Sky :: Vimを使ったGo言語開発手法Big Sky :: Vimを使ったGo言語開発手法はてなブックマーク - Big Sky :: Vimを使ったGo言語開発手法


まず.zshrcまたは.bashrcなどに$GOPATHの指定を追加します。

export GOPATH=$HOME/_go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin


再読み込みします。

source .zshrc(or .bachrc)


GOROOTはGo をインストールした場所、/usr/local/goがデフォルトで指定されています。


入力補完としてgocodeを導入します。

go get github.com/nsf/gocode


これは$GOPATH/binにインストールされます。


.vimrcに以下を追加します。

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


これでhello worldを出力していきたいと思います。

vim test.go


拡張子はgoでファイルを作成します。

package main

import "fmt"

func main() {
    fmt.Println("hello, world")
}


これで保存します。

go run test.go


f:id:inagex:20140327144727p:plain


hello worldが出力できました。


Go言語にはgo fmtというコマンドがあり、それでコードを整形できます。


インデントを汚くして


f:id:inagex:20140327145204p:plain

:Fmt


f:id:inagex:20140327145257p:plain


きれいになった。


vimプラグインで簡単にパッケージをインポートできるのをやってみた。


f:id:inagex:20140327145414p:plain

:Import fmt




import (
    "fmt"
)


が挿入されました。


またgoを入れるのが面倒な人はhttp://golang.org/で簡単に試すことができます。


f:id:inagex:20140327145827p:plain


参考サイト


http://mattn.kaoriya.net/software/vim/20130531000559.htm


http://akiym.hateblo.jp/entry/2013/08/04/110731


http://qiita.com/methane/items/d82b9f28b97b5c3bd08a


http://azihsoyn.github.io/blog/2013/05/11/install-go-and-helloworld-by-mac-brew/


http://otiai10.hatenablog.com/entry/2013/08/09/132302