以下は、Golang の入門に関するブログです。記録しておいてください。(語学の基礎があれば、基本的に1時間で始められます)
1. Golang とは?
Golang (別名 Go) は、Google Inc. によって開発されたプログラミング言語です。これは、効率的でスケーラブルで保守可能なソフトウェア システムを構築するために設計された、静的に型付けされ、コンパイルされた並行言語です。Golang は構文が単純で、コンパイル速度が速く、パフォーマンスが優れているため、ますます多くの開発者に愛され、採用されています。
2.Golang をインストールする
Golang を使い始める前に、まず Golang 開発環境をインストールする必要があります。Golang は、Windows、Mac OS X、Linux などの複数のオペレーティング システム プラットフォームをサポートしており、必要に応じて対応するバージョンを選択してインストールできます。インストール手順は次のとおりです。
- Golang の公式 Web サイトを開き 、対応するシステムのインストール パッケージをダウンロードします。
- インストール パッケージをダブルクリックしてインストールし、プロンプトに従ってインストール プロセスを段階的に完了します。
インストールが完了したら、コマンドラインに入力して、インストールが成功したかどうかgo version
を。
3. Hello World プログラムを書く
Golang をインストールしたら、最も単純なプログラム、Hello World を作成してみます。
- という名前のファイルを作成し
hello.go
、テキスト エディタで開きます。 - 次のコードを入力します。
package main import "fmt" func main() { fmt.Println("Hello, World!") }
- ファイルを保存し、ファイルが置かれているディレクトリをコマンド ラインに入力します。
- プログラムを実行し、コマンドを入力します
go run hello.go
。
すべてが機能した場合、次の出力が表示されますHello, World!
。初めての Golang プログラムの作成に成功しました。おめでとうございます!
4. 基本文法
次に、Golang の基本的な構文を学びましょう。
4.1 変数
変数はプログラムの非常に重要な概念であり、データを格納するために使用されます。Golang では、var
キーワード。例えば:
var name string = "Alice"
上記のコードは、name
呼び出された、それを に初期化します"Alice"
。型を省略して、コンパイラに変数の型を自動的に推測させることもできます。
var name = "Alice"
または、:=
演算子。
name := "Alice"
これは、同時にname
という名前の。
4.2 配列とスライス
配列は、固定サイズの同種のデータ構造です。Golang では、次を使用して長さ 5 の整数配列を定義できます。
var arr [5]int
配列の長さは作成時に指定する必要があり、変更できないことに注意してください。添字を使用して配列要素にアクセスできます。
arr[0] = 1 // 将第一个元素设置为1
fmt.Println(arr[0]) // 输出:1
配列に加えて、Golang は動的にサイズ変更されるデータ構造であるスライスも提供します。配列とは異なり、スライスは必要に応じて長さを増減できます。スライスを作成して初期化する例を次に示します。
var s []int = make([]int, 5) // 创建一个长度为5的整型切片
s[0] = 1 // 将第一个元素设置为1
fmt.Println(s[0]) // 输出:1
4.3 制御の流れ
プログラムを作成するとき、通常、さまざまな条件に基づいてさまざまな操作を実行する必要があります。Golang では、if、for、switch などのステートメントを使用してプログラム フローを制御できます。
if ステートメントは、条件に基づいてさまざまなアクションを実行するために使用されます。簡単な if の例を次に示します。
if age >= 18 {
fmt.Println("成年人")
} else {
fmt.Println("未成年人")
}
が 18age
以上の出力し、"成年人"
それ以外の場合は を出力します"未成年人"
。
for ループは、指定されたコード ブロックを繰り返し実行するために使用され、多くの形式を取ることができます。for ループの最も一般的な形式は次のとおりです。
for i := 0; i < 5; i++ {
fmt.Println(i)
}
上記のコードは、0 から 4 までの数値を出力します。
switch ステートメントは、さまざまな状況に応じてさまざまなアクションを実行するために使用されます。以下に例を示します。
switch dayOfWeek {
case "Monday":
fmt.Println("星期一")
case "Tuesday":
fmt.Println("星期二")
case "Wednesday":
fmt.Println("星期三")
default:
fmt.Println("其他")
}
dayOfWeek
の値が の場合"Monday"
は output "星期一"
、 の場合"Tuesday"
は output"星期二"
など。値がどのケースにも一致しない場合、デフォルト コード ブロックのステートメントが実行されます。
5. 並行プログラミング
Golang は、効率的な並行プログラムを簡単に作成できるようにする、豊富な並行プログラミング ツールを提供する並行言語です。
Golang で並行プログラミングを実装するには多くの方法がありますが、最も一般的な方法はゴルーチンとチャネルを使用することです。Goroutine は Golang ランタイムによって管理される軽量スレッドであり、1 つのプログラムで複数のタスクを同時に実行できます; チャネルは goroutine 間でデータを転送するために使用されます。
これは、ゴルーチンとチャネルを使用した同時計算の例です。
func square(num int, out chan<- int) {
out <- num * num
}
func main() {
numbers := []int{1, 2, 3, 4, 5}
results := make(chan int)
for _, num := range numbers {
go square(num, results)
}
for i := 0; i < len(numbers); i++ {
fmt.Println(<-results)
}
}
このコードは、numbers
リスト、結果を出力します。go
キーワードで開始されたゴルーチンはsquare
、関数を非同期的に実行します。関数の 2 番目のパラメーターout
は書き込み専用チャネルで、計算結果をメイン スレッドに送信するために使用され、メイン スレッドは<-results
計算結果を受け取り、出力します。
上記は、いくつかの基本的な Golang 構文と並行プログラミングの方法です。Golang を深く学びたい場合は、公式ドキュメントやその他の関連書籍を参照できます。