コース一覧
/
Go 入門
/

はじめての Go

Hello, World!

Go で最初のプログラムを書いてみましょう。fmt.Println() 関数を使って、コンソールに文字列を出力する方法を学びます。

Go とは

Go は、Google が開発したプログラミング言語です。

シンプルな文法、高速な動作、並行処理の扱いやすさが特徴です。Web サーバー、CLI ツール、クラウドインフラなど、幅広い分野で使われています。

このコースでは、Go の基本的な文法を学んでいきます。まずは、コンソールに文字を出力することから始めましょう。

Go プログラムの基本構造

Go のプログラムは、次の 3 つの要素で構成されます。

package main import "fmt" func main() { fmt.Println("Hello, World!") }

それぞれの役割を見ていきましょう。

  • package main は、このファイルが実行可能なプログラムであることを示します
  • import "fmt" は、出力機能を持つ fmt パッケージを読み込みます
  • func main() は、プログラムのエントリーポイント(実行開始地点)です。プログラムを実行すると、この中のコードが自動的に実行されます

この 3 つが揃って初めて、Go のプログラムとして動かすことができます。

fmt.Println() 関数とは

Go では、コンソールに何かを出力したいときに fmt.Println() 関数を使います。

package main import "fmt" func main() { fmt.Println("Hello, World!") // => Hello, World! }

関数とは、特定の処理を行う命令のことです。fmt.Println() は「出力する」という処理を行う関数です。

関数の括弧の中に渡す値のことを引数(ひきすう)と呼びます。上の例では "Hello, World!" が引数です。fmt.Println() 関数は、引数として受け取った値をコンソールに出力します。

fmt は「format」の略で、テキストのフォーマットや入出力の機能を提供するパッケージです。Println は「Print line」の略で、出力の末尾に改行を追加します。

文字列とクォーテーション

"Hello" のような文字の並びを文字列と呼びます。Go では、文字列を書くときにダブルクォーテーション")で囲む必要があります。

package main import "fmt" func main() { fmt.Println("こんにちは") // => こんにちは }

Go では、文字列にはダブルクォーテーションのみを使います。シングルクォーテーション(')は文字列には使えません。

package main import "fmt" func main() { // シングルクォーテーションは文字列に使えない fmt.Println('こんにちは') // => コンパイルエラー: more than one character in rune literal }

なぜクォーテーションが必要なのか

クォーテーションがないと、Go はそれを文字列ではなく、プログラムの命令として解釈しようとします。

package main import "fmt" func main() { // これはエラーになります fmt.Println(Hello) // => コンパイルエラー: undefined: Hello }

上のコードは「Hello という名前の何か」を探そうとしてエラーになります。文字列として扱いたい場合は、必ずダブルクォーテーションで囲みましょう。

package main import "fmt" func main() { // 正しい書き方 fmt.Println("Hello") // => Hello }

いろいろな文字列を出力してみよう

fmt.Println() 関数を使えば、どんな文字列でも出力できます。

package main import "fmt" func main() { fmt.Println("Go を始めよう!") // => Go を始めよう! fmt.Println("今日の天気は晴れです") // => 今日の天気は晴れです fmt.Println("1 + 1 = 2") // => 1 + 1 = 2 }

まとめ

  • Go のプログラムは package mainimportfunc main() の 3 つの要素で構成される
  • fmt.Println() 関数を使って、コンソールに文字列を出力できる
  • 文字列はダブルクォーテーション(")で囲む(シングルクォーテーションは使えない)