Golang言語ベースのパッケージの概念
1528 ワード
パッケージの概念
Golangのパッケージの概念はPythonと同じで、同じ機能のコードをすべて1つのディレクトリに置いて、パッケージと呼ばれて、パッケージは他のパッケージに参照することができて、mainパッケージ(main.go)は実行可能なファイルを生成するために使用して、各プログラムは1つのmainパッケージしかなくて、mainパッケージの中で1つのmain関数だけあって、パッケージの主な用途はコードの多重性を提供することで、パッケージの関数または変数が呼び出される必要がある場合、関数または変数名の頭文字は小文字ではなく大文字でなければなりません.
パッケージのインポート
コードで他のパッケージの内容を参照するには、importキーを使用して使用するパッケージをインポートする必要があります.具体的な文法は以下の通りです.
注意事項: importインポート文は、通常、ソースファイルの先頭パケット宣言文の下に配置されます. インポートされたパッケージ名は、二重引用符で囲む必要があります. パッケージ名はGOPATH/src/の後から計算され、パス区切りが使用/行われます.
シングルラインインポート
複数行インポート
パッケージの別名
包の実戦
ディレクトリ構造は次のとおりです.
add.go
sub.go
main.go
Golangのパッケージの概念はPythonと同じで、同じ機能のコードをすべて1つのディレクトリに置いて、パッケージと呼ばれて、パッケージは他のパッケージに参照することができて、mainパッケージ(main.go)は実行可能なファイルを生成するために使用して、各プログラムは1つのmainパッケージしかなくて、mainパッケージの中で1つのmain関数だけあって、パッケージの主な用途はコードの多重性を提供することで、パッケージの関数または変数が呼び出される必要がある場合、関数または変数名の頭文字は小文字ではなく大文字でなければなりません.
パッケージのインポート
コードで他のパッケージの内容を参照するには、importキーを使用して使用するパッケージをインポートする必要があります.具体的な文法は以下の通りです.
import " "
注意事項:
シングルラインインポート
import " 1 "
import " 2 "
複数行インポート
import (
" 1 "
" 2 "
)
パッケージの別名
import (
a "go_dev/calc" // :a
)
func main(){
num := a.Add(1,2) //
fmt.Println(num)
}
包の実戦
ディレクトリ構造は次のとおりです.
>src
>test
>calc
>add.go
>sub.go
>main
>main.go
add.go
package calc
func Add(a,b int) int {
return a + b
}
sub.go
package calc
func Sub(a,b int) int {
return a - b
}
main.go
package main
import (
"test/calc"
"fmt"
)
func main(){
sum := calc.Add(10,20)
sub := calc.Sub(300,100)
fmt.Println("sum=",sum)
fmt.Println("sub=",sub)
}