Day 1: 開発環境構築とHello World - 評価基準

評価の目的

この評価は、プログラミング学習の基礎となる環境構築と、Go言語の基本構文の理解度を確認するためのものです。

---

評価項目

1. 環境構築(30点)

項目 配点 評価基準
Goのインストール 15点 `go version`で正しくバージョンが表示される
エディタの準備 10点 VS Code等でGoファイルを編集できる
作業ディレクトリ 5点 指定された構造でフォルダが作成されている

2. 基本課題(50点)

課題 配点 評価基準
問題2-1: Hello World 20点 正しく「Hello, World!」が出力される
問題2-2: 自己紹介 15点 名前を含む文が正しく出力される
問題2-3: 複数行表示 15点 3行が正しく出力される

3. 応用課題(20点)

課題 配点 評価基準
問題3-1: Print vs Println 8点 両方の違いを正しく実装
問題3-2: アスキーアート 6点 指定された形が正しく出力される
問題3-3: エラー修正 6点 3つのエラーをすべて修正

---

評価の詳細

Hello World プログラムのチェックポイント

package main        // ✓ パッケージ宣言がある
import "fmt"        // ✓ fmtパッケージがインポートされている
func main() {       // ✓ main関数が定義されている
    fmt.Println("Hello, World!")  // ✓ 正しい関数名と文字列
}                   // ✓ 波かっこが正しく閉じている

確認項目:

  • [ ] package mainが1行目にある
  • [ ] import "fmt"でダブルクォートが使われている
  • [ ] func main()の後に波かっこがある
  • [ ] fmt.PrintlnPが大文字
  • [ ] 文字列が""で囲まれている
  • [ ] プログラムがエラーなく実行できる

コードスタイルのチェック

良いコード:

package main

import "fmt"

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

悪いコード(動くが推奨されない):

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

---

合格基準

レベル 点数 説明
優秀 90-100点 すべての課題を完璧にクリア
合格 70-89点 基本課題をクリア、応用課題の一部完了
再提出 50-69点 基本課題に不備あり
不合格 0-49点 環境構築が完了していない

最低合格ライン: 70点以上

---

よくある減点ポイント

1. 構文エラー(-5〜10点)

// NG: セミコロンを付けている(Goでは不要)
fmt.Println("Hello");

// NG: 大文字小文字が違う
fmt.println("Hello")  // pが小文字はエラー

// NG: 波かっこの位置が違う
func main()
{  // Goではこの書き方はNG

2. インポートエラー(-5点)

// NG: ダブルクォートがない
import fmt

// NG: シングルクォート
import 'fmt'

3. 出力の相違(-3〜5点)

  • スペースの過不足
  • 改行の有無
  • 文字の誤字
  • ---

    ピアレビューのポイント

    評価者は以下の点を確認してください:

  • 動作確認
- 実際にコードを実行して出力を確認する - エラーメッセージがないことを確認

  • コード確認
- 指定されたファイル名になっているか - コードの可読性(適切な改行、インデント)

  • 理解度の確認
- 「このコードは何をしていますか?」と質問 - packageimportfuncの役割を説明できるか

---

フィードバックの例

良いフィードバック

> 「Hello Worldは正しく動作しています。fmt.Printlnの使い方もばっちりです。次のステップとして、fmt.Printfも試してみてください。」

改善が必要な場合のフィードバック

> 「import "fmt"の部分でダブルクォートが抜けています。Goでは文字列やパッケージ名は必ず""で囲む必要があります。修正して再度提出してください。」