หากต้องการเข้าถึง Switch Blocks ใน VEXcode VR คุณต้องมีใบอนุญาต VEXcode VR Premium ดูบทความนี้เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการเข้าถึง Switch Blocks ใน VEXcode VR
แม้ว่าโปรแกรมเมอร์ระดับเริ่มต้นจะมีความโน้มเอียงที่จะใช้อินเทอร์เฟซแบบบล็อกมากกว่า แต่ผู้เรียนขั้นสูงอาจสนใจในการเขียนโค้ดหุ่นยนต์โดยใช้ภาษาการเขียนโปรแกรมแบบข้อความ เช่น Python ในอดีต การเปลี่ยนผ่านจากการโปรแกรมแบบบล็อกไปเป็นการเขียนโปรแกรมแบบข้อความอาจทำให้ผู้เรียนรู้สึกเหมือนกำลังเรียนภาษาใหม่ทั้งหมด ซึ่งไม่สามารถใช้ตรรกะที่เคยเรียนรู้จากการใช้บล็อกได้1 Switch Blocks ใน VEXcode VR ได้รับการพัฒนาขึ้นเพื่ออำนวยความสะดวกในการเปลี่ยนผ่านจากการเขียนโปรแกรมแบบบล็อกไปเป็นแบบข้อความ บทความนี้จะกล่าวถึงวิธีการใช้ Switch Blocks ใน VEXcode VR และพาคุณผ่านสถานการณ์จำลองในห้องเรียนเพื่ออธิบายและแสดงคุณลักษณะเหล่านั้นในบริบท
การใช้สวิตช์บล็อก
Switch รวบรวมองค์ประกอบที่คุ้นเคยของการเขียนโปรแกรมแบบบล็อกและรวมกล่องข้อความที่สามารถพิมพ์คำสั่งข้อความได้ วิธีนี้ช่วยให้ผู้เรียนสามารถเปลี่ยนไปใช้ข้อความได้อย่างช้าๆ ในขณะที่เรียนรู้คำสั่งและไวยากรณ์ที่เกี่ยวข้องกับ Python
Switch ช่วยให้ผู้เรียนมีสะพานเชื่อมจากบล็อกสู่การเขียนโค้ดแบบข้อความได้อย่างเป็นธรรมชาติ เมื่อนักเรียนมีความคุ้นเคยกับตรรกะและลำดับคำสั่งแล้ว พวกเขาสามารถเริ่มแปลงโครงการทีละบล็อกได้
สิ่งนี้ช่วยให้ผู้เรียนสามารถทำงานกับกระแสตรรกะของโปรแกรมแบบบล็อกต่อไปได้ โดยที่ผู้เรียนสามารถเห็นสิ่งต่างๆ เช่น การวนรอบบล็อกอื่นๆ ได้ด้วยตนเอง ขณะเดียวกันก็เริ่มทดลองใช้คำสั่งข้อความด้วยตัวเอง เมื่อบล็อกถูกแปลงเป็นสวิตช์แล้ว นักเรียนสามารถเปลี่ยนพารามิเตอร์ได้อย่างง่ายดาย และเริ่มทำความเข้าใจไวยากรณ์ของคำสั่งข้อความ หัวข้อนี้จะแนะนำคุณเกี่ยวกับการใช้งาน Switch ของนักเรียน เพื่ออธิบายว่าคุณสามารถใช้บล็อคเหล่านี้ในโครงการ VEXcode VR ได้อย่างไร
Switch มีจำหน่ายพร้อมใบอนุญาต VEXcode VR Premium เรียนรู้เพิ่มเติมเกี่ยวกับการสมัครสมาชิก VEXcode VR ที่นี่
เมื่อคุณมีใบอนุญาต คุณจะเรียนรู้วิธีการเข้าถึง Switch โดยใช้ข้อมูลในบทความนี้
สวิตช์ในห้องเรียน
ออสตินเป็นนักเรียนที่เขียนโค้ดด้วยบล็อกมาหลายปีแล้ว แม้ว่านักเรียนบางคนในชั้นเรียนยังเป็นนักเขียนโค้ดมือใหม่ แต่ออสตินอยากเรียนรู้เพิ่มเติมเกี่ยวกับ Python และวิธีการเขียนโค้ดหุ่นยนต์ VR โดยใช้ข้อความ คุณครูฮันเตอร์ ครูสอนวิทยาการคอมพิวเตอร์ สังเกตเห็นว่าออสตินพร้อมสำหรับความท้าทายเพิ่มเติมแล้ว และได้แนะนำ Switch เพื่อช่วยสร้างกรอบการเรียนรู้ของออสตินและแนะนำการเขียนโค้ดแบบข้อความ นางสาวฮันเตอร์สาธิตพื้นฐานบางอย่าง เช่น การแปลงบล็อกและการเปิดวิธีใช้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่งสลับ Python สำหรับแต่ละบล็อก
วันนี้คุณครูฮันเตอร์มอบหมายกิจกรรมการทำความสะอาดแนวปะการัง กับชั้นเรียน เธอใช้ VEXcode VR สำหรับชั้นเรียนการเขียนโค้ดของเธอ เพราะเธอรู้ว่าเธอสามารถสร้างความแตกต่างในการสอนและเข้าถึงนักเรียนที่มีระดับการเขียนโค้ดต่างกันได้ด้วยกิจกรรมเดียวกัน โหมดสวิตช์ช่วยอำนวยความสะดวกในการสร้างความแตกต่างให้กับนักเรียนเช่นออสติน ในกิจกรรมการทำความสะอาดแนวปะการัง เป้าหมายคือการรวบรวมขยะให้ได้มากที่สุดเท่าที่จะทำได้ ก่อนที่แบตเตอรี่ของ VR Robot จะหมด ด้วยความเข้าใจในความท้าทายและวิธีการเขียนโค้ดอัลกอริทึมพื้นฐาน ออสตินจึงสร้างโครงการ VEXcode VR ที่ใช้เซ็นเซอร์ Down Eye เพื่อตรวจจับขอบของสนามเด็กเล่นและขับถอยหลังเพื่อหลีกเลี่ยงอันตรายต่อปะการัง
การแปลงบล็อกเดี่ยวเป็นสวิตช์
แปลง 1 บล็อค
ตอนนี้ Austin มีโปรเจ็กต์ที่เขาได้ทดสอบและตรวจยืนยันแล้วว่าใช้งานได้ ขั้นตอนถัดไปคือการแปลงบล็อกเป็น Switch เพื่อเริ่มสำรวจ Python
คุณสามารถแปลงบล็อกเป็นสวิตช์ได้โดยการกดค้างไว้หรือคลิกขวาที่บล็อก จากนั้นเลือกตัวเลือก "แปลงเป็นบล็อกสวิตช์" ตามที่แสดงในวิดีโอนี้
ตอนนี้ Austin เห็นแล้วว่าบล็อก [Drive for] ได้ถูกเปลี่ยนเป็นคำสั่ง drive_for Python แล้ว หลังจากการแปลงแล้ว ออสตินดำเนินโครงการเพื่อให้แน่ใจว่าโครงการยังคงทำงานได้ตามที่ตั้งใจไว้ หลังจากการแปลงแล้ว ออสตินต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่ง drive_for ด้วยการเปิดความช่วยเหลือของบล็อก [Drive for] ออสตินสามารถสร้างการเชื่อมต่อระหว่างพารามิเตอร์จากบล็อกไปยังคำสั่ง Python ได้
การใช้ความช่วยเหลือเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่ง Switch Python
เปิดความช่วยเหลือ
เพื่อดูข้อมูลคำสั่ง Switch Python ในวิธีใช้ Austin จะเปิดหน้าต่างวิธีใช้และเลือกบล็อก [ไดรฟ์สำหรับ] จากนั้นเลื่อนไปที่ด้านล่างตามที่แสดงในวิดีโอที่นี่
นางสาวฮันเตอร์เช็คอินและเห็นว่าออสตินกำลังเรียนรู้เพิ่มเติมเกี่ยวกับบล็อก [Drive for] เธอท้าทายเขาให้ประยุกต์ใช้สิ่งที่เรียนรู้จากการแปลงบล็อกและการพิมพ์ลงในบล็อกใหม่ เธอแสดงวิธีการลากบล็อกสวิตช์เข้าไป และให้ออสตินลองพิมพ์คำสั่ง turn_for ลงในบล็อก ออสตินเปิดวิธีใช้สำหรับบล็อคและจดบันทึกเกี่ยวกับโครงสร้างของคำสั่ง
การพิมพ์ในบล็อกสวิตช์
เพิ่มบล็อค
เมื่อทราบคำสั่ง Python จากการตรวจสอบความช่วยเหลือ ออสตินต้องการพิมพ์ลงในบล็อก Switch โดยตรง ออสตินลากบล็อก [Switch Stack] จากกล่องเครื่องมือ แล้วเพิ่มบล็อกนั้นไว้เหนือบล็อก [Turn for]
พิมพ์ลงในบล็อค
จากนั้น Austin จะใช้เคอร์เซอร์เพื่อเลือกบล็อกสวิตช์และเริ่มพิมพ์คำสั่ง turn_for Python ตามที่แสดงที่นี่
หลังจากพิมพ์คำสั่งใหม่และตรวจสอบให้แน่ใจว่าพารามิเตอร์ตรงกับบล็อกเดิมแล้ว ก็สามารถลบบล็อก [Turn for] ได้
นางสาวฮันเตอร์เข้ามาตรวจดูความคืบหน้าของออสติน เธอเห็นโครงการ Switch และขอตรวจดูว่ามันทำงานเพื่อให้แน่ใจว่าพิมพ์คำสั่งถูกต้อง หลังจากตรวจสอบการทำงานของโครงการแล้ว เธอก็สาธิตคุณลักษณะอีกอย่างหนึ่ง นั่นก็คือ บล็อกหลายบรรทัด
คัดลอกและวาง
บล็อก [Switch Stack] สามารถมีโค้ดหลายบรรทัดพิมพ์อยู่ภายในได้ ออสตินคัดลอกข้อความ turn_for และวางลงในบล็อกด้านบนตามที่แสดงในวิดีโอที่นี่
ออสตินพบว่าเมื่อกด 'Enter' หรือ 'Return' บนแป้นพิมพ์ ก็จะสามารถเพิ่มบรรทัดเพิ่มเติมลงในบล็อกได้ และทำการเพิ่มคำสั่ง Python ต่อไป
ออสตินรู้สึกราวกับว่าเป็นผู้เชี่ยวชาญคำสั่ง Drivetrain ใน Python จึงพิมพ์ใบรับรองออกมาและบันทึกโครงการไว้สำหรับครั้งต่อไป
การแปลงสแต็กเป็นสวิตช์
ในช่วงท้ายปีการศึกษา คุณครูฮันเตอร์กลับมาเยี่ยมชมกิจกรรมการทำความสะอาดแนวปะการังอีกครั้ง และท้าทายให้นักเรียนทำคะแนนให้สูงขึ้นหรือใช้การเขียนโค้ดแบบข้อความ ในขณะที่ Austin ได้ใช้คำสั่ง Drivetrain ในบล็อก Switch กิจกรรมนี้ถือเป็นโอกาสที่จะเรียนรู้เพิ่มเติมเกี่ยวกับสิ่งที่เทียบเท่ากับบล็อก 'C' และค่าบูลีนใน Python
แปลงแรปเปอร์
Austin กดค้างไว้หรือคลิกขวาที่บล็อก [If then else] แล้วเลือก 'Convert wrapper and contents to Switch Block' การดำเนินการนี้จะแปลงลูปและเนื้อหาของลูปเป็นบล็อกสวิตช์เดี่ยว
สังเกตการเยื้องหลังจากการแปลงเสร็จสิ้น คำสั่งหลายคำสั่งในบล็อกสวิตช์หนึ่งจะต้องมีการเยื้องที่ถูกต้องจึงจะทำงานได้ตามต้องการ
บล็อกสวิตช์เพิ่มเติม
แม้ว่า Austin จะใช้บล็อก [Switch Stack] โดยเฉพาะ แต่ก็ยังมีบล็อก Switch เพิ่มเติมให้ใช้ด้วย ออสตินพร้อมที่จะส่งมอบโครงการทำความสะอาดแนวปะการังที่ได้รับการปรับปรุงแล้ว แต่มีแผนร่วมกับนางสาวฮันเตอร์ที่จะลองใช้บล็อกสวิตช์แบบใหม่ตามที่ระบุไว้ด้านล่างในชั้นเรียนครั้งต่อไป
บล็อกสวิตช์มีรูปร่างแบบเดียวกันกับบล็อกอื่นๆ ตารางนี้แสดงการเปรียบเทียบระหว่างรูปร่างบล็อก ความหมาย และบล็อกสวิตช์ประเภทเดียวกัน
| รูปทรงบล็อก | คำอธิบาย | ตัวอย่างบล็อก | ตัวอย่างสวิตช์ |
|---|---|---|---|
| บล็อกหมวก | เริ่มต้นจากการเรียงบล็อกเป็นกองและจัดรูปทรงให้สามารถติดบล็อกไว้ด้านล่างได้ | ||
| บล็อคซ้อน | ดำเนินการคำสั่งหลัก มีรูปร่างที่สามารถติดไว้ด้านบนหรือด้านล่างของบล็อกสแต็กอื่นๆ ได้ | ||
| บล็อกบูลีน | คืนเงื่อนไขเป็นจริงหรือเท็จ และพอดีกับบล็อกใดๆ ที่มีอินพุตรูปหกเหลี่ยม (หกด้าน) สำหรับบล็อกอื่นๆ | ||
| นักข่าวบล็อค | รายงานค่าในรูปแบบตัวเลขและใส่ไว้ในบล็อกที่มีอินพุตรูปวงรีสำหรับบล็อกอื่นๆ | ||
| บล็อกซี | วนซ้ำบล็อกภายในหรือตรวจสอบว่าเงื่อนไขเป็นจริงหรือเท็จ มีรูปร่างที่สามารถยึดบล็อกซ้อนกันไว้ด้านบน ด้านล่าง หรือด้านในได้ |
|
|
การนำทุกสิ่งมารวมกัน
ขณะที่คุณครูฮันเตอร์เฝ้าดูออสตินทดสอบการพิมพ์คำสั่ง Python ต่างๆ ในบล็อก Switch เธอจึงเห็นว่า Switch ช่วยให้นักเรียนของเธอสามารถสร้างกรอบการเรียนรู้ของตนเองได้อย่างไร นักเรียนของเธอทุกคนมีประสบการณ์การเขียนโค้ดที่แตกต่างกันไปก่อนที่จะเริ่มเรียนกับเธอ และความท้าทายภายใน VEXcode VR ช่วยให้พวกเขาเขียนโค้ดตามระดับของตนเองได้ นักเรียนบางคนเขียนโค้ดโดยใช้ Blocks เพียงอย่างเดียว บางคนเขียนโค้ดโดยใช้ Python และบางคน เช่น Austin ใช้ Switch เพื่อเปลี่ยนไปเขียนโค้ดโดยใช้ Python ในช่วงไม่กี่เดือนถัดมา ออสตินได้เปลี่ยนไปเขียนโค้ดเฉพาะใน Python โดยนำการเรียนรู้จากการใช้ Switch มาประยุกต์ใช้เพื่อให้การเปลี่ยนจากบล็อกไปเป็นข้อความง่ายและราบรื่นยิ่งขึ้น
Switch Blocks ใน VEXcode VR ช่วยให้ครู เช่น คุณ Hunter สามารถทำหน้าที่เป็นผู้ช่วยเหลือในการเรียนรู้ ในขณะที่นักเรียนที่มีระดับการเขียนโค้ดต่างกันก็สามารถทำตามความท้าทายเดียวกันได้ ในขณะเดียวกันนักเรียน เช่น ออสติน รู้สึกได้รับอำนาจในการลองใช้วิธีใหม่ๆ ในการแก้ปัญหาการเขียนโค้ดในขณะที่เปลี่ยนจากบล็อกไปเป็นข้อความโดยใช้ Switch Blocks ใน VEXcode VR