A Tour of Go をやる! – その3 「Imports」いんぽーっ! 【Go言語/A Tour of Go】

2018年8月29日GoA Tour of Go,Goのお勉強,Go言語,インポート,パッケージGo,A Tour of Go,Goのお勉強,Go言語,インポート,パッケージ

記事ヘッダー_Imports

「A Tour of Go をやる!」シリーズの第3回目。

今回も「A Tour of Go」を進めるんですが、ちょっと前回書きすぎまして…、今回はうっすい内容になりそうです…。

お題は「Imports(インポート)」

該当ページはこちら。

パッケージ読み込みます宣言、「Imports(インポート)」がお題。

Imports とは?

パッケージ使う前する “私、パッケージ使います…!" 宣言ですかね。

例えば、文字列を出力するための Printf ファンクションが使いたければ、Printf が定義されている fmt パッケージをインポートしないと「undefined: fmt( fmt って何ー??)」と怒られます。

これは、Go のコンパイラに Printf ファンクションの所在が伝わっていないため。
「Import fmt」と明示的に宣言することで、「fmt パッケージに所属している Printf くんだね!」ということが明確になる。

サンプルプログラムを見る

サンプルプログラムが用意されているので、実際の Import の宣言部分を確認してみます。
今回も関係のある箇所にコメント入れています。

package main

// Printf と Sqrt が定義されているパッケージをインポート
import (
  "fmt"
  "math"
)

func main() {

  // Printf と Sqrt を使用している
  fmt.Printf("Now you have %g problems.\n", math.Sqrt(7))

}

Import の書き方は前回説明しちゃったんですが、一応コピペしておきます。

// fmt をインポートする場合
import "fmt"
// 複数のパッケージをまとめてインポートする場合
import (
  "fmt"
  "math"
)

factored import statement で書くほうが良いスタイルと…、ページの説明に書いてありました。ちなみに、factored import statement とは括弧でまとめる書き方を指すようです。

// このパターン
import (
  "packageA"
  "packageB"
)

サンプルプログラムを実行する

サンプルプログラムを実行してみます。

7 の平方根が出力されるはずです。
ちなみに、 math.Sqrt は平方根を返すファンクションです。

さいごに

今回は Import な話題、前回に続きパッケージ関連の内容でした。
実は次回も似たようなものだったりします。

…こりゃ、飽きる_(┐「ε:)_

ではまた次回~ ٩(-ω-´)و

「Go言語のお勉強」インデックス

このシリーズについて

「A Tour of Go」を題材にした記事は現在書き直し中…。_(:3」∠)_
ほとんどサボりが原因で尻切れとなっていたシリーズですが、最近になってようやく続きを書きたくなり再開をしようと思ったんです。が、古い記事を見返すとデータ・フォーマットが古かったり内容が分かり難かったりに気づきまして、、、この際だからと最初の記事から書き直しをすることになりました…