【Golang基礎】Go言語のプログラム構造
6831 ワード
Go言語のプロジェクト構造
一般的に、1つのGoプロジェクトはGOPATHの下に、次の3つのディレクトリがあります.
一般的にbinディレクトリとpkgディレクトリは作成せず、goコマンドは自動的に構築され(go installなど)、srcディレクトリを作成するだけでよい.
Goプログラムの一般構造 Goプログラムは 各Go言語ソースファイルの先頭には、ソースファイルが属するコードパッケージを示す Go言語の実行可能プログラムを生成するには、 同じ経路の下には1つの は、 は、 は、関数体の外部で は、 は、
Go言語でのimportの詳細 パッケージをインポートした後に呼び出されなかった関数またはタイプはコンパイルエラーを報告します. 単行インポート マルチライン導入 パケットが他のパケットにインポートされた場合、パケットは順次インポートされる. インポートされたパケットが他のパケット(例えば、パケットB)に依存する場合、まずパケットBがインポートされ、その後、パケットBの定数および変数が初期化され、最後に、パケットBに すべてのパケットのインポートが完了すると、 パケットが複数回インポートされた場合、パケットは1回のみインポートされます. カスタムエイリアス: 点( を省略することができる.下線( 以上の3点は同時に使用できません.
一般的に、1つのGoプロジェクトはGOPATHの下に、次の3つのディレクトリがあります.
.
├── bin //
├── pkg //
└── src //
一般的にbinディレクトリとpkgディレクトリは作成せず、goコマンドは自動的に構築され(go installなど)、srcディレクトリを作成するだけでよい.
Goプログラムの一般構造
//
package main
//
import "fmt"
//
const _PI float64 = 3.14
//
var title string = "Go "
//
type newType int
//
type Student struct{
}
//
type ILearn interface{
}
// main
func main(){
fmt.Println("Hello Golang")
}
package
によって組織され(pythonと類似)、package
は最も基本的な配布単位と工事管理における依存関係の体現である.pakcage
宣言が必要です.デフォルトでは、main
のpackage
パッケージを除き、他のパッケージ名はフォルダ名に対応します.main
のpackage
パケットが必要であり、そのパケットの下にmain()
関数が必要である.package
しか存在せず、1つのpackage
は複数のソースファイルに分割することができる.import
キーワードを介して他の非main
パケットをインポートする.const
キーワードによって定数を定義する.var
キーワードを使用してグローバル変数を定義する.type
のキーワードによって構造(struct
)またはインタフェース(interface
)の宣言を行う.func
キーワードによって関数を宣言する.Go言語でのimportの詳細
import
文は、ソースファイルに依存するpackage
パケットをインポートすることができ、パケットをインポートした後、.
を使用してパケット内の関数を呼び出すことができる.import
は、以下の2つの方法を使用することができる. package main
import "fmt"
import "os"
import "time"
import "io"
package main
import (
"fmt"
"os"
"time"
"io"
)
main
関数がある場合、init
関数が自動的に実行される.init
の変数と定数が初期化され、main
のmain
関数(存在する場合)が実行され、init
関数が実行されます.main
を使用してimport
パッケージをインポートする場合は、別名を設定できます.package main
import io "fmt"
func main(){
io.Println("Hello Golang")
}
package main
import (
io "fmt"
)
func main(){
io.Println("Hello Golang")
}
package
)で識別するインポートパケットの後、そのパケットの関数を呼び出すときは、エントリープレフィックス名(使用を推奨)package main
import . "fmt"
func main(){
Println("Hello Golang")
}
.
)識別子パッケージをインポートする場合、パッケージ全体をインポートするのではなく、そのパッケージの_
関数を実行するため、パッケージ内の他の手紙や属性をパッケージ名で呼び出すことはできません.下線(init
)を使用する操作は、通常、将来の登録パッケージのエンジンであり、外部で便利に使用できます.