การแบ่งแยกเป็นทักษะพื้นฐานของวิทยาการคอมพิวเตอร์ที่จำเป็นสำหรับการพัฒนาความเข้าใจในระยะยาวของนักเรียนเกี่ยวกับวิธีแก้ปัญหาการเขียนโค้ด บทความนี้จะสำรวจว่าการสลายตัวคืออะไร เหตุใดจึงสำคัญ และวิธีการอำนวยความสะดวกในการเรียนรู้ของนักเรียนเกี่ยวกับการสลายตัว
การสลายตัวคืออะไร?
การสลายตัวเป็นกระบวนการในการทำลายปัญหาที่ซับซ้อนออกเป็นส่วนเล็กๆ ที่สามารถจัดการได้ง่ายขึ้น สิ่งนี้ทำให้กระบวนการสร้างโปรเจ็กต์การเขียนโค้ดง่ายขึ้นโดยอนุญาตให้นักเรียนแก้ไของค์ประกอบหนึ่งของปัญหาในแต่ละครั้ง
ทำไมการสลายตัวจึงมีความสำคัญ?
เมื่อนักเรียนเริ่มเรียนรู้การเขียนโค้ด พวกเขาต้องเผชิญกับการคิดเกี่ยวกับภาษาในรูปแบบใหม่และท้าทาย พวกเขาต้องเปลี่ยนจากการสื่อสารในภาษาพูดซึ่งเต็มไปด้วยการอนุมานและความแตกต่างเล็กน้อย มาเป็นโครงสร้างที่แม่นยำและสมเหตุสมผลซึ่งจำเป็นในการเขียนโค้ด การปรับตัวนี้เป็นเรื่องยากมากสำหรับนักเรียนและมักจะขัดขวางความสำเร็จของพวกเขา การแบ่งแยกเป็นทักษะด้านวิทยาการคอมพิวเตอร์ที่สำคัญที่นักเรียนต้องได้รับเพื่อที่จะเขียนโค้ดได้สำเร็จ เนื่องจากจะช่วยให้นักเรียนเริ่มต้นด้วยภาษาพูดและปรับแต่งได้จนกว่าจะเป็นสิ่งที่สามารถนำมาใช้ในโปรเจ็กต์การเขียนโค้ดได้
การแยกย่อยปัญหาช่วยให้สามารถแก้ไขได้ทีละน้อย ช่วยป้องกันไม่ให้นักเรียนล้นหลาม เมื่อนักเรียนแยกย่อยปัญหาออกเป็นส่วนเล็กๆ ก่อนที่จะเริ่มเขียนโค้ด พวกเขาสามารถสร้างแต่ละส่วนเล็กๆ ของโปรเจ็กต์และทดสอบเพื่อให้แน่ใจว่าทำงานได้ตามที่คาดไว้ ก่อนที่จะไปยังส่วนถัดไป วิธีนี้ง่ายกว่าการพยายามเขียนโค้ดทุกขั้นตอนที่จำเป็นเพื่อให้บรรลุเป้าหมายในคราวเดียว และป้องกันไม่ให้นักเรียนหงุดหงิดที่ต้องเสียเวลาในโครงการที่ยาวนานเมื่อพยายามแก้ไขข้อผิดพลาด
กระบวนการสลายตัวยังช่วยให้นักเรียนมีแนวทางที่เป็นระบบในการสร้างโครงงาน ขจัดสิ่งล่อใจที่นักเรียนอาจต้องคาดเดาและตรวจสอบวิธีการแก้ปัญหา การคาดเดาและการตรวจสอบเป็นวิธีการแก้ปัญหาที่ไม่มีประสิทธิภาพ และจะไม่มีประสิทธิภาพเมื่อนักเรียนเริ่มมีส่วนร่วมในความท้าทายในการเขียนโค้ดที่ซับซ้อนมากขึ้นเรื่อยๆ
นอกจากนี้ การแยกย่อยโปรเจ็กต์ยังช่วยให้นักเรียนระบุรูปแบบในโค้ดของตน และสร้างต่อยอด แก้ไข และนำส่วนของโค้ดกลับมาใช้ใหม่ได้ สิ่งนี้ทำให้ทั้งการสร้างและการแก้ไขปัญหาโปรเจ็กต์ง่ายขึ้น ขณะเดียวกันก็ช่วยให้นักเรียนมีความเข้าใจโค้ดที่พวกเขากำลังสร้างอย่างลึกซึ้งมากขึ้น ทำให้พวกเขาสามารถใช้ความเข้าใจนี้ในโปรเจ็กต์ในอนาคตได้
สุดท้ายนี้ การสลายตัวยังอำนวยความสะดวกในการทำงานร่วมกันระหว่างนักเรียนในขณะที่พวกเขาทำงานร่วมกันเพื่อสร้างโครงการหุ่นยนต์ในกลุ่ม โปรเจ็กต์ที่แยกย่อยซึ่งบันทึกไว้ในสมุดบันทึกด้านวิศวกรรมจะมีสิ่งประดิษฐ์ให้นักเรียนใช้เมื่อพูดคุยถึงโปรเจ็กต์กลุ่มหรือแบ่งปันกับกลุ่มอื่น
อำนวยความสะดวกในการสลายตัว
การสลายตัวเกิดขึ้นเมื่อนักเรียนอยู่ในขั้นตอนการวางแผน ก่อนที่จะเริ่มสร้างโครงงานของตนเอง นักเรียนควรบันทึกกระบวนการสลายตัวลงในสมุดบันทึกทางวิศวกรรมและแบ่งปันกับคุณก่อนที่จะเริ่มเขียนโค้ด สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้สมุดบันทึกด้านวิศวกรรมกับนักเรียน โปรดดูบทความนี้
จัดเตรียมกรอบการทำงานสามขั้นตอนง่ายๆ นี้ให้กับนักเรียนสำหรับการเข้าใกล้การสลายตัว:
- ระบุเป้าหมายหลักของโครงการ โดยการระบุผลลัพธ์ที่หุ่นยนต์จะแสดงให้เห็นเมื่อโครงการประสบความสำเร็จ บันทึกเป้าหมายนี้ลงในสมุดบันทึกด้านวิศวกรรม
- กำหนดขั้นตอนหลักที่หุ่นยนต์ต้องทำเพื่อให้บรรลุเป้าหมาย พิจารณาและบันทึกขั้นตอนหลักหรือภาพรวมที่หุ่นยนต์จะต้องดำเนินการเพื่อให้บรรลุเป้าหมาย บันทึกขั้นตอนระดับสูงเหล่านี้ลงในสมุดบันทึกทางวิศวกรรม
-
แบ่งขั้นตอนหลักออกเป็นพฤติกรรมหุ่นยนต์ที่เพิ่มขึ้นน้อยที่สุด แบ่งแต่ละขั้นตอนหลักออกเป็นพฤติกรรมที่เล็กที่สุดที่หุ่นยนต์สามารถทำได้ บันทึกขั้นตอนที่แยกย่อยเหล่านี้ลงในสมุดบันทึกทางวิศวกรรม
- พฤติกรรมหุ่นยนต์แต่ละอย่างควรจะสามารถจับคู่กับบล็อกหรือคำสั่งที่สอดคล้องกันได้ ถ้าไม่เช่นนั้นก็สามารถสลายขั้นตอนต่อไปได้
ในตัวอย่างนี้ นักเรียนกำลังแยกย่อยโปรเจ็กต์เพื่อสร้างเขาวงกตใน VEXcode VR Wall Maze + Playground
ขั้นตอนที่ 1: ระบุเป้าหมายหลักของโครงการ บันทึกเป้าหมายลงในสมุดบันทึกด้านวิศวกรรม
ขั้นตอนที่ 2: กำหนดขั้นตอนหลักที่หุ่นยนต์ต้องทำเพื่อให้บรรลุเป้าหมาย
- ในที่นี้ นักเรียนได้คิดถึงพฤติกรรมทั้งหมดที่หุ่นยนต์จะต้องดำเนินการเพื่อขับเคลื่อนจากจุดเริ่มต้นไปยังจุดสิ้นสุดของเขาวงกต และแสดงรายการตามลำดับในสมุดบันทึกด้านวิศวกรรม
ขั้นตอนที่ 3: แบ่งขั้นตอนหลักออกเป็นพฤติกรรมหุ่นยนต์ที่เพิ่มขึ้นน้อยที่สุด
- นักเรียนสามารถเริ่มกำหนดค่าโดยประมาณที่จำเป็นในการทำให้แต่ละขั้นตอนเสร็จสิ้นได้ ค่าเหล่านี้จะต้องได้รับการทดสอบและปรับเปลี่ยนเมื่อสร้างโปรเจ็กต์ใน VEXcode
- นักเรียนควรตรวจสอบเพื่อให้แน่ใจว่าแต่ละขั้นตอนการแยกย่อยนั้นสอดคล้องกับบล็อก VEXcode หนึ่งบล็อกโดยตรง ถ้าไม่เช่นนั้นก็ต้องสลายขั้นตอนต่อไป
เมื่อนักเรียนแบ่งย่อยโครงการของตนลงไปจนถึงระดับของบล็อกหรือคำสั่งแต่ละรายการแล้ว พวกเขาสามารถย้ายจากขั้นตอนการวางแผนโครงการไปยังขั้นตอนการนำไปปฏิบัติได้ พวกเขาควรโอนขั้นตอนหลักที่กำหนดในขั้นตอนที่ 2 ไปยังความคิดเห็น จากนั้นเพิ่มบล็อกหรือคำสั่งที่เกี่ยวข้องสำหรับพฤติกรรมที่แยกย่อยทั้งหมดจากขั้นตอนที่ 3 ไปยังแต่ละความคิดเห็นเหล่านั้นเพื่อสร้างโครงการของพวกเขา
นักเรียนควรสร้างโครงงานของตนเองทีละขั้นตอน โดยทดสอบพฤติกรรมแต่ละอย่าง (หรือชุดพฤติกรรมที่จัดกลุ่มตามตรรกะ) ก่อนที่จะไปยังขั้นตอนต่อไป อยู่ในขั้นตอนนี้ที่นักเรียนจะต้องใช้ทรัพยากรที่มีเพื่อกำหนดค่าพารามิเตอร์ที่ถูกต้อง ตัวอย่างเช่น ในตัวอย่าง VEXcode VR ด้านบน ค่าระยะทางถูกกำหนดโดยใช้ความรู้ที่ว่าแต่ละช่องเขาวงกตมีเส้นผ่านศูนย์กลาง 300 มม. วิธีการกำหนดค่าจะแตกต่างกันไปขึ้นอยู่กับสถานการณ์ แต่จำเป็นต้องทดสอบและปรับค่าเสมอในระหว่างกระบวนการสร้างโปรเจ็กต์การเขียนโค้ด
สนับสนุนนักเรียนในขณะที่พวกเขาเรียนรู้การสลายตัว
ก่อนที่นักเรียนจะเริ่มทำงานกับความท้าทายจาก STEM Lab หรือโครงการ VEXcode อื่นๆ ใช้เวลาจัดการกับการแบ่งส่วนด้วยตัวเองเพื่อให้คุณพร้อมที่จะตอบคำถามที่นักเรียนอาจมี กระตุ้นให้นักเรียนแสดงแผนการแยกส่วนสำหรับโครงการของตนก่อนที่จะเริ่มเขียนโค้ด เพื่อให้คุณสามารถเสริมกระบวนการสลายตัวและตรวจสอบให้แน่ใจว่าพวกเขาแบ่งงานออกเป็นพฤติกรรมหุ่นยนต์ที่เล็กที่สุดเท่าที่จะเป็นไปได้ เตือนนักเรียนว่าพวกเขาควรจะสามารถระบุบล็อกหรือคำสั่งที่สอดคล้องกับพฤติกรรมแต่ละอย่างได้
- หากนักเรียนมีปัญหาในการจินตนาการถึงขั้นตอนหลักหรือภาพรวมที่หุ่นยนต์จำเป็นต้องดำเนินการเพื่อบรรลุเป้าหมายของโครงงาน สนับสนุนให้พวกเขา:
- วาดเส้นทางที่หุ่นยนต์ต้องใช้เพื่อบรรลุเป้าหมาย
- ทำตามขั้นตอนที่หุ่นยนต์ต้องทำเพื่อให้บรรลุเป้าหมาย
- พูดคุยถึงขั้นตอนต่างๆ ที่หุ่นยนต์ต้องดำเนินการเพื่อให้บรรลุเป้าหมาย
- หากนักเรียนกำลังดิ้นรนที่จะตัดสินว่าขั้นตอนของพวกเขาถูกแยกย่อยลงไปถึงระดับบล็อกหรือระดับการบังคับบัญชาแต่ละรายการหรือไม่ ให้ถามพวกเขาว่า:
- หุ่นยนต์จะต้องใช้บล็อกหรือคำสั่งกี่บล็อกเพื่อทำให้พฤติกรรมนั้นสมบูรณ์?
- หุ่นยนต์สามารถทำตามขั้นตอนนั้นให้เสร็จสิ้นโดยใช้เพียงหนึ่งบล็อกหรือคำสั่งได้หรือไม่?
- คุณจะแยกย่อยพฤติกรรมนั้นออกเป็นการกระทำของหุ่นยนต์ที่เล็กลงได้อย่างไร?
การสนับสนุนนักเรียนในขณะที่พวกเขาเรียนรู้ที่จะสลายตัวจะช่วยให้มั่นใจว่าพวกเขามีรากฐานที่มั่นคงสำหรับการแก้ปัญหาด้านวิทยาการคอมพิวเตอร์ในอนาคต
คุณมีคำถามเพิ่มเติมเกี่ยวกับการอำนวยความสะดวกในการเรียนรู้เกี่ยวกับการสลายตัวของนักเรียนในห้องเรียนของคุณหรือไม่? ถามพวกเขาใน PD+ Communityหรือ กำหนดเวลาเซสชัน แบบ 1 ต่อ 1 เพื่อพูดคุยกับผู้เชี่ยวชาญ VEX