ก่อนจะทำให้โปรแกรมฉลาดได้ โปรแกรมเมอร์ต้องฉลาดก่อน

ตามหัวข้อเลย วันนี้ขอยกหัวข้อที่เราชอบบอกกับรุ่นน้องหรือนักเรียนที่เรียนเขียนโปรแกรมด้วย...

ก่อนจะทำให้โปรแกรมฉลาดได้ โปรแกรมเมอร์ต้องฉลาดก่อน

แล้วอะไรคือความหมายของคำว่า "ฉลาด" ในประโยคนี้?

จาก ที่เห็น คนที่เขียนโปรแกรม "มือใหม่" เวลาได้รับโจทย์อะไรสักอย่างมา อย่างแรกที่พวกเขาจะทำคือเปิดIDE (โปรแกรมสำหรับช่วยเขียนโปรแกรม ที่เอาไว้พิมพ์โค้ดนั่นแหละ) โดยมักจะละเลยบางสิ่งที่สำคัญมากไป

นั่นคือ algorithm! แนวทางการคิดเพื่อแก้ปัญหาของโจทย์นี้

เขียนโปรแกรมเล่นหมากรุกให้หน่อยสิ

ถ้ามีโจทย์ว่าลูกค้าหรืออาจารย์อยากได้โปรแกรมสำหรับเล่นหมากรุก โปรแกรมเมอร์มือใหม่ทุกท่านจะทำอะไรก่อน

เริ่มเขียนโค้ดเลยมั้ย? (แล้วก็จบเหมือนเดิมคือเขียนไปสักพักก็จะตัน ทำต่อไม่ได้)

แล้วเราพลาดอะไรไปล่ะ

สิ่งที่พลาดคือคุณยังไม่ "ฉลาด" เลย แล้วคุณจะทำให้โปรแกรมฉลาดได้ยังไง!

คำถาม...คุณจะเขียนโปรแกรมเล่นหมากรุก แล้วคุณเล่นหมากรุกเป็นหรือยัง?

คุณรู้หรือยังว่าตัวหมากแต่ละตัวเดินยังไง กฏมาตราฐานของหมากรุกมีว่าอะไร แล้วกลยุทธ์ที่นักเล่นหมากรุกชอบใช้มีอะไรบ้าง

ตัวรูค(เรือ)เดินแนวตั้ง-นอน กี่ช่องก็ได้

สรุป การเขียนโปรแกรมคือการสอนอะไรบางอย่างให้คอมพิวเตอร์ แล้วถ้าเรายังไม่รู้เลยว่าสิ่งที่เราจะสอนมันใช้ (หรือเล่น) ยังไง ก็อย่างเพิ่งไปสอนคอมพิวเตอร์เลย

422 Total Views 3 Views Today
Ta

Ta

สิ่งมีชีวิตตัวอ้วนๆ กลมๆ เคลื่อนที่ไปไหนโดยการกลิ้ง .. ถนัดการดำรงชีวิตโดยไม่โดนแสงแดด
ปัจจุบันเป็น Senior Software Engineer อยู่ที่ Centrillion Technology
งานอดิเรกคือ เขียนโปรแกรม อ่านหนังสือ เขียนบทความ วาดรูป และ เล่นแบดมินตัน

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *