実行してみる
go run で動かす
手元に Go を入れると、go というコマンドが1つ増えます。書いたコードを動かすときは、これを使います。
プレーンテキスト
go run main.gomain.go に書いたプログラムがその場で動きます。裏ではコンパイルという作業が走っていて、人間が書いた文字を機械が読める形に翻訳しています。go run は翻訳と実行をまとめてやってくれる、練習向けのコマンドです。
翻訳が挟まるので、書き間違いは動かす前に見つかります。
プレーンテキスト
./main.go:6:2: undefined: fmt「6行目の2文字目で fmt が分かりません」という意味です。実行してから初めて気づく言語もある中で、Go は動かす前に止めてくれます。
出力してみる
画面に文字を出すには fmt を使います。
Go
package main
import "fmt"
func main() {
fmt.Println("fleama-go を起動します")
}go run main.go と打つと、こう出ます。
プレーンテキスト
fleama-go を起動します最初の1行が出た瞬間が、環境が正しく整った証拠になります。
このコースの練習では
このコースの演習は、画面への出力ではなく 関数が返す値 で答え合わせをします。fmt.Println は画面に出すだけで、値を返さないからです。
代わりに使うのが fmt.Sprintf です。同じように文字を組み立てますが、画面に出さずに文字列として返します。
Go
msg := fmt.Sprintf("%s を起動します", "fleama-go")
// msg には "fleama-go を起動します" が入る%s の部分が、後ろに渡した文字で置き換わります。この Sprintf が、このコースで最もよく使う道具になります。
要件
"fleama-go"を渡したらfleama-go を起動しますを返す- どんな名前でも同じ形になるよう、
fmt.Sprintfで組み立てる import "fmt"を書き足す
入出力例
startupMessage("fleama-go") → "fleama-go を起動します"
startupMessage("fleama") → "fleama を起動します"
startupMessage("shop") → "shop を起動します"ヒント
編集 ゆめさく編集部