0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Google App Engine で始める Go 実践入門 Part 2 【GOPATH】

Last updated at Posted at 2019-03-31

連載を通して簡単なブログアプリを作成しつつ Go/GAE について学んでいきます。
今回は GOPATH についての説明です。

GOPATH について

Go の開発は GOPATH と呼ばれるディレクトリ配下で行うことが標準的です。
GOPATH となるディレクトリの場所は自分自身で任意で決めて良いことになっていますが、 $HOME/go をGOPATH に設定するのが一般的です。(Go 1.8+ ではデフォルトが $HOME/go となっています。)
direnv 等のツールを用いてプロジェクトごとにカレントディレクトリを GOPATH に設定して開発を行うスタイルもありますが、今回は素直に $HOME/go 配下で開発を行います。

GOPATH 配下のディレクトリ構成は次のように定められています。

$GOPATH
  ├── bin
  ├── pkg
  └── src

このディレクトリ構成を Node.js に例えると次のようになるかと思います。

  • $GOPATH/bin はグローバルインストールした node_modules/bin が配置されるところ
  • $GOPATH/pkg はビルドされたパッケージが配置されるところ (Nodeにはない概念)
  • $GOPATH/src はグローバルインストールした node_modules と 自分のソースコードを配置するところ

src ディレクトリで実際に開発を行うことになりますが、src 直下にプロジェクトのルートディレクトリを配置するのではなく、ソースコードを管理しているリポジトリと紐づけて階層構造にするのが標準となっています。

$GOPATH
  ├── bin
  ├── pkg
  └── src
        └── [ホスティング先]
              └── [ユーザ名 or 組織名]
                    └── [リポジトリ名] (ここがプロジェクトのルートディレクトリになる)

例えば GitHub をホスティング先にしている私の場合は次のようになります。

$GOPATH
  ├── bin
  ├── pkg
  └── src
        └── github.com
              └── rema424
                    └── go-gae-blog-app-example

おわりに

次回のテーマは『プロジェクトの作成』です。

よかったら Twitter フォローしてね。@_rema424

0
1
3

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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?