มาถึงเสาหลักที่ 3 กันแล้ว! เคยสังเกตไหมว่าแผนที่รถไฟฟ้าทำไมดูเข้าใจง่าย ทั้งที่ภูมิประเทศจริงๆ ซับซ้อนมาก? นั่นคือพลังของ
คัดกรองสิ่งสำคัญ มองข้ามสิ่งที่ไม่จำเป็น!
มาถึงเสาหลักที่ 3 กันแล้วครับ! หลังจากที่เราแยกปัญหาเป็นส่วนๆ และหารูปแบบที่เหมือนกันได้แล้ว ขั้นตอนต่อไปคือการ "คัดกรองข้อมูล" ครับ เพราะในชีวิตจริง ข้อมูลบางอย่างก็มีเยอะเกินไปจนทำให้เราปวดหัว โปรแกรมเมอร์เก่งๆ จึงต้องมีทักษะในการเลือกดูเฉพาะ "แก่นสำคัญ" ครับ!
แนวคิดเชิงนามธรรม (Abstraction) คือ การมุ่งเน้นความสำคัญไปที่ "ข้อมูลหลัก" ที่จำเป็นต่อการแก้ปัญหา และ "ตัดรายละเอียดที่ไม่จำเป็น" ทิ้งไปครับ พูดง่ายๆ คือการมองภาพรวมให้เรียบง่ายที่สุด เพื่อไม่ให้เราสับสนกับรายละเอียดปลีกย่อยนั่นเอง
💡 เทคนิคจำง่ายๆ: Abstraction = เลือกเฉพาะ "สิ่งที่ต้องใช้" + ทิ้ง "สิ่งที่ไม่เกี่ยว"
น้องๆ เคยดูแผนที่รถไฟฟ้า BTS หรือ MRT ไหมครับ? ถ้าน้องๆ สังเกตดีๆ จะพบว่า แผนที่รถไฟฟ้าเป็นตัวอย่างของ Abstraction ที่ดีที่สุดเลยครับ!
สมมติคุณครูให้นักเรียนเขียนโปรแกรมคำนวณดัชนีมวลกาย (BMI) ของเพื่อนในห้อง ถ้านักเรียนเดินไปเก็บข้อมูลเพื่อน นักเรียนจะถามอะไรบ้างครับ?
ข้อมูลของเพื่อน 1 คน มีเยอะมาก เช่น ชื่อ, นามสกุล, อายุ, น้ำหนัก, ส่วนสูง, สีผม, อาหารที่ชอบ, เบอร์โทรศัพท์
การใช้ Abstraction: เราจะเลือกเก็บแค่ "น้ำหนัก" และ "ส่วนสูง" เท่านั้น! เพราะเป็นข้อมูลเดียวที่ต้องใช้ในการคำนวณ BMI ส่วนข้อมูลอื่นๆ ถือเป็นรายละเอียดที่ไม่จำเป็นสำหรับการแก้ปัญหานี้ จึงต้องตัดทิ้งไปครับ!
มาทดสอบการคัดกรองข้อมูลกันครับ!
ข้อที่ 1: แนวคิดเชิงนามธรรม (Abstraction) มีความหมายตรงกับข้อใดมากที่สุด?
ข้อที่ 2: หากนักเรียนต้องการสร้าง "แอปพลิเคชันพยากรณ์อากาศ" ข้อมูลใดต่อไปนี้คือข้อมูลที่ "ไม่จำเป็น" และควรถูกตัดทิ้งตามหลัก Abstraction?
ข้อที่ 3: ทำไมโปรแกรมเมอร์ถึงต้องใช้แนวคิดเชิงนามธรรม (Abstraction) ในการเขียนโปรแกรม?
© 2023 Smartyquizkids.com
All Rights Reserved.