目次へ

1. Goとは

1.1 Go基礎知識

2009年11月10日にGoogleによって発表されたオープンソースのプログラミング言語です。

1.2 Goの特徴

Goには以下の特徴があります。

  • コンパイル型
    Goはコンパイラ言語です。
    クロスコンパイルが可能なのでWindowsやMac、Linuxなど環境に応じたバイナリを生成することができます。
  • 静的型付言語
    Goは、C言語のような静的型付け言語です。
    動的型付け言語の手軽さと静的型付け言語の安全性を組み合わせを目指しています。
  • 明瞭な依存関係
    Goでは、パッケージインポートによる依存関係を明瞭にしています。
    コンパイル時に、使用されていないパッケージや相互依存があるとエラーになります。
  • 並行処理が書きやすい
    Goでは、言語レベルで並行処理の手段が提供されています。
    後述のGoroutineやChannelでカンタンに並行処理を実装できます。
  • コンカレントGC
    Go1.4まではStop The WorldによるGCでしたが、
    Go1.5からConcurrent Mark SweepによるGCに変わりました。
  • 強力な標準ライブラリ
    Goには、netやlogなど標準ライブラリが充実しています。
    標準ライブラリのみで実用的なアプリケーションの作成が可能です。
  • 強力な周辺ツール
    Goには標準でコードフォーマッター(gofmt)やテスト(go test)があります。
    gofmtによって開発者間の表記ずれが極力抑えられます。

1.3 Go 実行環境構築

Goの実行環境を整えましょう。

以下は、Macでのインストール手順です。
なお、brewやpkgでのインストールもできます。

その他のOSでのインストール手順はこちらをご覧ください。
https://golang.org/doc/install

対象のアーカイブを以下のURLから選択してダウンロードします。
https://golang.org/dl/

$ wget https://storage.googleapis.com/golang/go1.8.darwin-amd64.tar.gz

ダウンロードしたアーカイブを展開します。 ※2017/02/17時点で Go1.8 が最新

$ sudo tar -C /usr/local -xzf go1.8.darwin-amd64.tar.gz

/usr/local/go/bin を環境変数PATHに追加します。
必要に応じて、$HOME/.bash_profile や $HOME/.zsh_profile に追加してください。

$ export PATH=$PATH:/usr/local/go/bin

Goのバージョン確認( go version go1.8 darwin/amd64 と表示されれば成功です)

$ go version

go のみを入力してみましょう。

$ go

以下の内容が表示されます。
Goには標準で、

  • ビルド(build)
  • フォーマッタ(fmt)
  • ドキュメンテーション(doc)
  • テスト(test)
  • パッケージインストーラ(get, install)

があることがわかります。

Go is a tool for managing Go source code.

Usage:

	go command [arguments]

The commands are:

	build       compile packages and dependencies
	clean       remove object files
	doc         show documentation for package or symbol
	env         print Go environment information
	bug         start a bug report
	fix         run go tool fix on packages
	fmt         run gofmt on package sources
	generate    generate Go files by processing source
	get         download and install packages and dependencies
	install     compile and install packages and dependencies
	list        list packages
	run         compile and run Go program
	test        test packages
	tool        run specified go tool
	version     print Go version
	vet         run go tool vet on packages

Use "go help [command]" for more information about a command.

Additional help topics:

	c           calling between Go and C
	buildmode   description of build modes
	filetype    file types
	gopath      GOPATH environment variable
	environment environment variables
	importpath  import path syntax
	packages    description of package lists
	testflag    description of testing flags
	testfunc    description of testing functions

Use "go help [topic]" for more information about that topic.

1.4 Hello Gopherを書こう

それではGoで Hello Gopher をしてみましょう。

$ vi hello.go
package main

import (
    "fmt"
)

func main() {
    fmt.Println("Hello, Gopher")
}

実行してみます。.go ファイルの実行には run コマンドを使用します。
Hello, Gopher と表示されれば成功です。

$ go run hello.go

実行結果

Hello, Gopher

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp