เครื่องมือ · Built-in Code Tools

เครื่องมือฝึก Code

4 เครื่องมือที่ทำให้นักศึกษา "อ่านโค้ดเป็น · แก้ได้ · พิสูจน์ความเข้าใจได้" — ทั้งหมดรันใน browser ไม่ต้องลง Python · เหมาะกับการเรียน W04–W07

🧰 5 เครื่องมือในหน้านี้


🐍 Tool 1 — Python Runner

รัน Python ใน browser ของคุณเอง — ไม่ต้องลง · ไม่ต้องเปิด Cursor · ครั้งแรกใช้เวลา ~30 วินาทีโหลด Pyodide (~10MB) ครั้งต่อไป cache ไว้แล้ว

วิธีใช้
  1. แก้ code ทางซ้าย
  2. ถ้ามี input() ใส่คำตอบใน "Input" (1 บรรทัดต่อ 1 input)
  3. กด ▶️ Run (หรือ Ctrl/Cmd + Enter)
  4. ดูผลในกล่อง Output
  5. กด ↺ Reset เพื่อคืน code เดิม
name = input("ชื่อ: ") hw = int(input("คะแนน homework (0-30): ")) mid = int(input("คะแนน midterm (0-30): ")) final = int(input("คะแนน final (0-40): ")) total = hw + mid + final if total >= 80: grade = "A" elif total >= 70: grade = "B" elif total >= 60: grade = "C" else: grade = "F" print(f"คะแนนรวม: {total} / 100") print(f"เกรด: {grade}")

💡 ลองเปลี่ยนค่า input เป็น 85 / 75 / 95 แล้ว Run ดูผล


🔎 Tool 2 — Code Trace Visualizer

Code Trace ช่วยให้คุณ "เห็นใน head ของ Python" ตอนที่มันรัน — ตัวแปรไหนมีค่าอะไร เมื่อไหร่ · ลูป iterate เป็นรอบ ๆ ยังไง · นี่คือ skill "คิดเหมือน Python"

ตัวอย่าง: นับเกรดของห้องเรียน

💡 คลิก ถัดไป ทีละขั้น · หรือ Auto Play ให้รันเอง · สังเกตว่า s และ count เปลี่ยนยังไง


📋 Tool 3 — Diff Viewer

เมื่อ AI "แก้โค้ดให้" คุณต้องเช็คว่า "มันแก้ตรงไหนบ้าง" · Diff Viewer แสดง before/after คู่กัน · บรรทัดที่ เพิ่ม = เขียว · บรรทัดที่ ลบ = แดง

def calc_grade(score): if score >= 80: return "A" elif score >= 70: return "B" elif score >= 60: return "C" else: return "F"
def calc_grade(score): if score < 0: return "I" elif score >= 80: return "A" elif score >= 70: return "B" elif score >= 60: return "C" else: return "F"

💡 สังเกตว่า if ตัวแรกกลายเป็น elif · นี่คือการเปลี่ยนที่ ละเอียด ที่ AI ทำให้ โดยอัตโนมัติ · ถ้าไม่ใช้ Diff Viewer คุณจะ "ไม่รู้ว่ามันเปลี่ยน"


🎲 Tool 4 — Predict-the-Output Quiz

วิธีทดสอบว่า "อ่าน code ออกจริง ๆ" คือ — ปิด output ก่อน อ่านเอง แล้วทาย ก่อน Run · ถ้าทายถูกบ่อย ๆ = สมองคุณ run Python ได้แล้ว

x = 5
y = 3
total = x + y
print(f"{x} + {y} = {total}")
print(total * 2)
5 + 3 = 8
16
บรรทัด 4: f-string แทรกค่า x=5, y=3, total=8"5 + 3 = 8"
บรรทัด 5: total * 2 = 8 * 2 = 16
scores = [60, 75, 90]
passed = 0
for s in scores:
    if s >= 70:
        passed += 1
print(f"ผ่าน {passed} จาก {len(scores)}")
ผ่าน 2 จาก 3
วน 3 รอบ: 60 (ไม่ผ่าน), 75 (ผ่าน → passed=1), 90 (ผ่าน → passed=2) · len(scores) = 3
a = "5"
b = 3
print(a * b)
555
a เป็น string "5" · "5" * 3 ใน Python = ทำ string ซ้ำ 3 ครั้ง → "555" · ถ้าจะให้คูณเลข ต้องใช้ int(a) * b

📝 Tool 5 — Spec Quality Scorecard

ก่อนสั่ง AI ให้เขียน code — ต้องเขียน spec ที่ดี · Scorecard ตรวจ spec ของคุณตาม 8 criteria + แจ้งภาษากำกวม · ทำให้รู้ว่า "ขาดอะไรก่อนคุยกับ AI"

วิธีใช้
  1. วาง spec ของคุณ (Markdown หรือ plain text ก็ได้)
  2. หรือกด "ลอง spec ตัวอย่าง" เพื่อดูว่า spec ที่ดีหน้าตายังไง
  3. กด "ตรวจ" → ดูผล 8 criteria + คำเตือนภาษากำกวม
  4. แก้ส่วนที่ ❌ → ตรวจอีก จน ≥ 75%

💡 ใช้ Code Tools ร่วมกัน — Workflow แนะนำ

  1. เขียน spec → ตรวจกับ Spec Scorecard — รู้ว่าขาดอะไรก่อนสั่ง AI
  2. สั่ง AI เขียน code · เอา code มา Predict Quiz — ทาย output ก่อน ลับสมอง
  3. ผิด? → ใช้ Code Trace เดิน code ทีละขั้น เห็นว่าทำไม
  4. เข้าใจแล้ว → แก้ใน Python Runner ลองเปลี่ยน ดูผล
  5. AI แก้ให้? → เอามาดูใน Diff Viewer เช็คว่าแก้ตรงไหน
  6. ส่งงาน — copy code ใส่ Cursor / ลงในไฟล์ .py ของจริง
หมายเหตุ — Code Tools เป็น "สนามฝึก" ไม่ใช่ "เครื่องมือทำงานจริง" สำหรับ project จริง ใช้ Cursor / VS Code · Python Runner ที่นี่ดีสำหรับ "เรียน + ทดสอบสั้น ๆ" แต่ไม่สามารถ install package ใหม่ / เข้าถึง filesystem / ใช้ git ได้