以下に示すように、コンソールに「Hello World!」を出力するのは非常に簡単で、数行のコードだけで実行できます。
package main // main パッケージの宣言
import (
"fmt" // fmt パッケージのインポート、文字列をプリントするために必要
)
func main() { // main 関数の宣言
fmt.Println("Hello World!") // Hello World! を表示する
}
これらのコードの意味が理解できなくても大丈夫です。以下で 1 つずつ紹介していきます。
パッケージ (パッケージの作成)
Go 言語では、管理単位として「パッケージ」が使用されます。各 Go ソース ファイルは、最初にそれが属するパッケージを宣言する必要があるため、各 Go ソース ファイルの先頭はパッケージ宣言になっており、その形式は次のとおりです。
package name
このうち、packageはパッケージ名を宣言するキーワード、nameはパッケージの名前です。
Go言語ではパッケージとフォルダーが1対1に対応しており、以下のような特徴があります。
- ディレクトリ内の同じレベルにあるファイルは、同じパッケージに属します。
- パッケージ名はそのディレクトリ名と異なっていてもかまいません。
- メイン パッケージは Go 言語プログラムのエントリ パッケージであり、Go 言語プログラムにはメイン パッケージが1 つだけ必要です。プログラムに本体パッケージが存在しない場合、コンパイル時にエラーが発生し、実行ファイルを生成できません。
import (パッケージをインポート)
パッケージ宣言の後に、プログラムが依存するパッケージをインポートするために使用される import ステートメントがあります。インポートされるパッケージ名は二重引用符""
で囲まれ、形式は次のとおりです。
import “name”
このうち、import はインポートされたパッケージのキーワード、name はインポートされたパッケージの名前です。
コードの行 4 は、fmt パッケージをインポートします。このコード行は、fmt パッケージ内の関数または変数を使用する必要があることを Go コンパイラに伝えます。fmt パッケージは、入出力をフォーマットするために Go 言語の標準ライブラリによって提供されます。内容(C言語のstdio.hヘッダファイルに似ています)、osパッケージ、ioパッケージなどと同様ですが、後ほど詳しく紹介します。
もう 1 つ注意すべき点は、インポートされたパッケージには、コードimported and not used: "xxx"
などのコンパイル エラーを報告します ( “xxx” はパッケージ名を示します)。
1 つの import キーワードを使用して複数のパッケージをインポートすることもできます。この場合、パッケージ名を角かっこ( )
で囲む必要があり、各パッケージ名は 1 行を占め、次のように記述されます。
import(
“name1”
“name2”
)
メイン機能
コードの 7 行目では、Go 言語プログラムのエントリ関数、つまりプログラムの開始後に実行される最初の関数である main 関数を作成します。 main 関数はメイン パッケージでのみ宣言でき、他のパッケージでは宣言できません。メイン パッケージには main 関数が 1 つだけ存在する必要があります。
C/ C++プログラムのエントリ関数も main() であり、C/C++ プログラムには main() 関数が 1 つしかありません。
main 関数はカスタム関数の一種で、Go 言語ではすべての関数がキーワード func で始まり、定義形式は以下のようになります。
func function_name (params) (return value){
//function content
}
フォーマットの説明は次のとおりです。
- 関数名: 文字、数字、および
_
で構成されます。関数名の最初の文字を数字にすることはできません。また、同じパッケージ内で関数名を重複させることはできません。 - パラメータ リスト: パラメータは
func foo( a int, b string )
などのパラメータ変数とパラメータ タイプで構成されます。 - 戻り値リスト: 戻り値の型のリスト、またはパラメーター リストのような変数名と型の組み合わせにすることができます。関数に戻り値がある場合は、関数本体の return ステートメントを使用して返す必要があります。
- 関数本体: 繰り返し呼び出すことができるコードの一部。
注: Go 言語関数の左中括弧{
は関数名と同じ行になければなりません。そうしないと、エラーが報告されます。
ハローワールドを印刷する
コードfmt.Println("Hello World!")
の 8 行目で、 Println は fmt パッケージ内の関数であり、C の printf と同様に、文字列、整数、小数などの出力データをフォーマットするために使用されます。言語機能。ここでは、 Println 関数を使用して、 ( )
内の""
で囲まれた部分である文字列を出力します。
Println 関数は印刷後に自動的に折り返すことに注意してください。ln は line の略語です。
Dot .
は Go 言語演算子の一種で、ここでは fmt パッケージ内の Println 関数を呼び出すことを意味します。
さらに、コードfmt.Println("Hello World!")
の最後に、終了文字として;
を使用する必要はなく、Go コンパイラーが自動的にそれを追加します。ここに;
を追加します。
この時点で、簡単な Go 言語プログラムの作成方法は皆さんすでにご存知だと思いますので、急いで試してみてください。次のセクションでは、作成した Go 言語プログラムを実行する方法を説明します。