広告の限界を超える|セールス
広告の限界を超える|セールス
2016.11.30
#6
Go Golang!

【はじめてのGo言語】Go言語でアプリケーションを作ってみよう 〜こんにちは、世界編〜

Kaz

こんにちは、バックエンドエンジニアのKazです。

前回の記事では、Go言語をどのように活用できるかを紹介しました。この記事からは実際にGo言語を使ってアプリケーションを作る方法を紹介していきます。

 

Goをインストール

まずはGo言語プログラムのコンパイラ兼ツール群である「Go」をインストールしましょう。

golang-nov-s01-golang-download

Goを公式サイトからダウンロードしていただき、PCにインストールします。その後、次のコマンドを実行してGoのバージョンを確認しましょう。

$ go version

環境変数の設定

Go言語には $GOPATH という重要な概念があり、基本的にアプリケーションはすべてこの下に格納されるべきという形を取っています。

このため、まずはじめに環境変数を設定する必要がでてきます。

$ touch ~/.bash_profile
$ vim ~/.bash_profile

まずは上記のコマンドを叩いてbashの設定ファイルを編集します。ここではvimを使っていますが、エディタはお好みのもので構いません。

.bash_profile を開いたら下記の内容を追加します。すでに何かが書かれていたらファイルの末尾に追記してください。

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

golang-nov-s14-setting-env-vars

上記の内容を保存したら source コマンドで内容を反映し、設定したパスを echo して正しく読み込まれているかを確認します。

$ source ~/.bash_profile
$ echo $GOPATH
$ echo $PATH

golang-nov-s13-go-env-vars

Atomで開発環境を整える

今日において、Go言語の開発環境は本格的な IDE から vim プラグインまで数多のものがでていますが、今回はプラグインを導入することで IDE 並の便利さを手に入れることができる「Atom」を使っていきます。

golang-nov-s03-atom-download

まずAtomをダウンロードし、インストールしてください。

Atom をインストールしたら、コマンドラインから Atom を開きます。

$ atom .

GUI ツールなのにコマンドラインから開くのはなんとも奇っ怪に思えますが、こうすることでシェル環境変数である $GOPATH などを読み込むことができるのです。「コマンドラインから開くなんて美しくない!」という方は、後述の go-plus プラグインの環境設定で $GOPATH を指定すれば回避できます。

 

go-plusを導入する

次に「go-plus」というプラグインをインストールします。これは Atom をさながら Go言語の IDE に仕立て上げてしまう、超高機能で便利な無料のプラグインです。

golang-nov-s04-atom-preview

Atom の環境設定を開き、プラグインのインストールタブから「go-plus」を検索・インストールします。その後は「必要なツールが入ってない」という通知が出るので、「Run Go Get」をクリックしてそれらをインストールします。インストールが完了するときちんとその旨の通知が出てくるので、それを確認したら開発環境の構築は出来上がりです。

golang-nov-s05-go-plus

こんにちは、世界

さて、次はいよいよエンジニア大好き「Hello World」です。

とりあえず Go では、あらゆるアプリケーションのコードは ‘$GOPATH’ 下に置かれることが望ましいとされます。そのため、適当に $GOPATH/src/localhost/helloworld というディレクトリを作ります。

$ mkdir -p $GOPATH/src/localhost/helloworld
$ cd $GOPATH/src/localhost/helloworld

次に、このディレクトリ内に main.go というファイルを作り、Atom で開きます。

$ touch main.go
$ atom main.go

golang-nov-s07-file-creation

Atomで main.go を下記のように書き換えます(go-plusの機能例を示すために、import 文をあえて抜いてあります)。

[go]
package main

func main() {
fmt.Println("Hello, 世界")
}
[/go]

これをためしに保存してみてください。go-plus が適切に設定され「Run Go Get」もできていたら、ファイル内データが保存時に自動的に修正され、下記のように書き換わります。

[go]
package main

import "fmt"

func main() {
fmt.Println("Hello, 世界")
}
[/go]

golang-nov-s09-go-fmt

書き忘れていた import の行が自動的に追加されました。

またよく見るとエディタの下に「✔ No Issues」と書かれています。これはプログラムにエラーがないことを示しています。

蛇足:もし書き間違えていると、Atomで保存した際に下記のようにエラーを教えてくれます。

golang-nov-s10-build-error

この例では Println(先頭が大文字)と書くべきところを println(先頭が小文字)と書いてしまったために起きています。

さて上記の内容を保存したら、ファイルをビルドして実行してみましょう!

$ go build
$ ./helloworld

golang-nov-s11-build-and-run

これで「Hello, 世界」と画面に出てきたら完了です。

次の記事では一歩踏み込んで「Go言語でWebサーバーを作る」という内容を紹介していきます!

j a v a