0
0

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.

GO言語 めちゃくちゃ初歩的なところで躓いた点をまとめてみる。

Last updated at Posted at 2019-07-21

自分用に躓いた点をメモ。
どんどん追記していく予定です。

##まず$GOPATHって?
GOを勉強してまず最初に躓きました・・。
表題にもある$GOPATHってなに?ってことです。

一言で言えば、
$GOPATHはGO言語の開発を行うワークスペースである!

少し詳しく説明すると、
GOを使ったプログラムのソースコードや
コンパイルされたバイナリのパッケージを置くためのフォルダーを指すために、
GOPATHという環境変数を設定する必要がある。

GOプログラムの中でimportコマンドが記述されていると、
GOPATHで指定された対象のパッケージを探すこととなる。

##ディレクトリ作成

独特のプロジェクト構成があるので、覚えるためにも記載。

**myprojectディレクトリ(例)**を作成しそこを起点に,
binpkgsrcという3つのディレクトリを作成。
3つのディレクトリの役割としては以下参照。

bin → go install時の格納先
pkg → 依存パッケージのオブジェクトファイル
src → プログラムのソースコード

##環境変数GOPATHで指定する

myprojectディレクトリのパスをGOPATHという環境変数を指定する。

$ cd myproject
$ export GOPATH=`pwd` # myprojectをGOPATHに登録

##ゴルーチン(goroutine)って?
並行処理を実現するために必要な処理で、
Go言語の代表的な機能のうちの1つ。

goroutineとして並列実行させたい処理は、関数として実装する。
go 関数の呼び出し 頭にgoとつけるだけ!

呼び出し元とは別の実行単位で動作を開始して、
呼び出された関数が終了すると、そのgoroutineも同時に終了する。
この辺の動作、頭だけで理解しようとするとよくわからずパニックになったので
調べてみると沢山わかりやすくまとめられている記事がありました!
**「ゴルーチン とは」**で出てきます。

2019/07/24 ゴルーチンって? 追記

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?