ต่อจากการสร้าง Assignment ใน Github Classroom จะมีอยู่ขั้นตอนนึงที่เรายังไม่ได้ลงรายละเอียด นั่นคือ การสร้าง Repository Template ซึ่งจะต้องทำตอนที่เรากำหนด Assignment ดังนั้นวันนี้เราจะมาลงรายละเอียดวิธีการสร้างและการกำหนดค่าให้กับ Repository Template เพื่อใช้ในการสร้างโจทย์ปฏิบัติในการเขียนโปรแกรมกันครับ
ไปที่ Github Organization ที่คุณพึ่งสร้างไว้ จากนั้นไปที่แถบเมนูที่เขียนว่า Repositories
จากนั้นจะปรากฏหน้าต่างเมนูแบบนี้ ให้คุณคลิกที่เมนู Templates
จากนั้นจะขึ้นหน้าต่างแบบนี้ ให้กดปุ่มสีเขียวที่เขียนว่า New repository เพื่อสร้างโจทย์ข้อใหม่
เมื่อเข้ามาแล้ว ให้ทำการตั้งค่าเบื้องต้น โดยการกำหนดชื่อของ Repository ในที่นี้ขอกำหนดเป็น Lab ข้อที่ 1.2 นะครับ ผมเลยตั้งชื่อว่า lab1.2 เพื่อจะได้เป็นแบบฝึกหัดข้อที่ต่อจากข้อที่แล้ว
จากนั้นในช่อง Description ให้กำหนดรายละเอียด(คร่าวๆ) ของ Lab นี้ (จะใส่หรือไม่ใส่ก็ได้) และเลือกให้เป็นแบบ Public
เสร็จแล้วให้เลือก Add a README file เพราะเราจะเอารายละเอียดของโจทย์มาใส่ที่นี้ (ซึ่งต้องเขียนเป็นภาษา Markdown:MD นะ) และทำการเลือก License ในที่นี้ผมเลือก GNU General Public License v3.0 เพื่อจะได้คุ้มครองเนื้อหาของเราด้วย เสร็จเรียบร้อยก็กดปุ่ม Create repository ได้เลย
เมื่อสร้าง Repository เรียบร้อยแล้วจะได้หน้าตาแบบนี้ สิ่งแรกที่ควรทำคือ การกำหนดรายละเอียดของโจทย์ก่อน โดยการแก้ไขไฟล์ README.md สามารถทำใน VS Code หรือกดรูปเครื่องหมายดินสอ เพื่อทำการ Edit เลยก็ได้
ในที่นี้ผมปรับรายละเอียดของโจทย์ พร้อมกำหนด Testcase ให้ผู้เรียนได้มองเห็นตัวอย่างเป็นลักษณะดังนี้
เสร็จเรียบร้อยแล้ว กดไปที่เมนูด้านบนที่เขียนว่า Settings เมื่อเข้ามาแล้ว ให้เช็คถูกที่คำว่า Template repository เพื่อทำให้ Repository นี้กลายเป็น Template ให้สามารถทำการทำให้กลายเป็น Assignment ได้นั่นเอง
ให้เข้าไปที่ Classroom ที่เราสร้างเอาไว้ จะเห็นว่าตอนนี้เรายังมีเพียงแค่ Assignment เดียวอยู่คือ lab1.1 เดี๋ยวเราจะเพิ่มอันใหม่เข้าไปพร้อมกัน
เมื่อคลิกเข้ามาแล้ว ให้กดสร้าง Assignment และให้เข้าไปดูในส่วนของ Starter code and environment จะปรากฏหน้าต่างนี้
ในช่อง Find a GitHub repository ให้เข้าไปแล้วพิมพ์คำว่า Lab1.2 และสแกนหาโจทย์ที่เราพึ่งสร้างมาเมื่อซักครู่
เมื่อเลือกได้แล้ว ก็ถือเป็นอันเสร็จสิ้นการผูก Repository Template เข้ากับ Assignment ในบทความก่อนหน้านี้แล้วนั่นเอง
สำหรับการเตรียมตัวที่ดี ผู้สอนควรเตรียมโจทย์ปัญหาการเขียนโปรแกรม พร้อมทั้ง Testcase ให้เรียบร้อย กำหนดค่าให้โจทย์แต่ละข้อกลายเป็น Repository Template ทั้งหมด เมื่อถึงตอนจะใช้งาน ให้เข้าไปใน Github Classroom และทำการเพิ่ม Assignment ตาม Template ที่เราตั้งเอาไว้ได้เลย เพียงเท่านี้ระบบ Auto Grading สำหรับการสร้างห้องเรียนสำหรับการเขียนโปรแกรมก็พร้อมใช้งานแล้วนั่นเอง