Go - 基本構文:入門ガイド
こんにちは、未来のプログラマーさん!Goプログラミングの世界へのエキサイティングな旅にご案内できることを嬉しく思います。私がコンピュータサイエンスを教えて数年経つ者として、Goは始めるのに非常に良い言語であることをお約束します。一緒にGoの基本構文を探求しましょう!
Goにおけるトークン
トークンはGoプログラムの構成単位です。これを文の個々の単語として考えてください。Goには以下のようなトークンの種類があります:
- キーワード
- İdentiファイア
- リテラル
- オペレータ
- 句読点
以下の簡単な例を見て、これらのトークンがどのように動作するかを確認しましょう:
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
この小さなプログラムでは、以下のようなトークンを特定できます:
- キーワード:
package
,import
,func
- İdentiファイア:
main
,fmt
,Println
- リテラル:
"Hello, Go!"
- 句読点:
(
,)
,{
,}
これが今は混乱するかもしれませんが、後で少しずつ解説していきます!
行セパレータ
Goでは、セミコロン(;
)を行セパレータとして使用します。しかし、ここに素晴らしいトリックがあります:実際には typed にする必要はありません!Goコンパイラは自動的に各行の終わりにセミコロンを插入します。素晴らしいですね?
例えば、以下の2つのコードは等価です:
fmt.Println("Hello")
fmt.Println("World")
fmt.Println("Hello");
fmt.Println("World");
最初のほうが好ましいです。なぜなら、よりクリーンで読みやすいからです。プログラミングでは、可読性が鍵となります!
コメント
コメントは、自分自身や他のプログラマーへのメモのようなものです。コンパイラは無視しますが、コードの説明には非常に役立ちます。
Goでは、以下の2種類のコメントがあります:
- 単行コメント:
//
で始まる - 複数行コメント:
/*
と*/
で囲む
以下にその使用例を示します:
// これは単行コメントです
/*
これは複数行コメントです。
複数行にまたがることができます。
長い説明には非常に便利です!
*/
func main() {
fmt.Println("Comments are fun!") // 行の終わりにもコメントを付けられます
}
İdentiファイア
İdentiファイアは、プログラム内のエンティティ(変数、関数、型など)に名前を付けるものです。Goでは、以下の規則に従います:
- 字母またはアンダースコアで始める必要があります
- 字母、数字、アンダースコアを含むことができます
- 大文字と小文字は区別されます
以下に有効なおよび無効なİdentiファイアの例を示します:
// 有効なİdentiファイア
myVariable
_secretValue
number123
camelCase
// 無効なİdentiファイア
123number // 数字では始められません
my-variable // ハイフンは許可されていません
キーワード
キーワードは、Goで特別な意味を持つ予約語です。これらをİdentiファイアとして使用することはできません。以下にGoのすべてのキーワードを示します:
Goのキーワード | |||
---|---|---|---|
break | default | func | interface |
case | defer | go | map |
chan | else | goto | package |
const | fallthrough | if | range |
continue | for | import | return |
select | struct | switch | type |
var |
以下に、これらのキーワードを簡単なプログラムで使用する例を示します:
package main
import "fmt"
func main() {
var age int = 25
if age >= 18 {
fmt.Println("You are an adult!")
} else {
fmt.Println("You are a minor.")
}
}
この例では、キーワード package
, import
, func
, var
, if
, else
を使用しています。
Goにおける空白
空白とは、コード内のスペース、タブ、改行のことです。Goでは、空白は一般にコンパイラによって無視されますが、トークンを区切る場合を除きます。
これは、コードの可読性を高めるために空白を使用できることを意味します。例えば、以下の2つのコードは等価です:
func main(){fmt.Println("No whitespace!")}
func main() {
fmt.Println("Lots of whitespace!")
}
後者のほうが遥かに読みやすいでしょう?コードの可読性を高めるように努めてください!
これでGoの基本構文への入門が終わりました。プログラミングを学ぶことは新しい言語を学ぶのと同じで、練習と忍耐が必要です。すぐに理解できないことがあったとしても、落胆しないでください。codingを続け、実験を続け、最も重要なのは、楽しむことです!
次のレッスンでは、Goの変数とデータ型について深く掘り下げます。それまでに、ハッピーコーディング!
Credits: Image by storyset