Skill เบื้องต้นของ Programmer ตอนที่ 2: Read Error Message

อ่าน Error Message ให้ออก แล้วลองแก้ปัญหาตามที่เขาบอกเรา

Error Message จาก Syntax Error
[ประสบการณ์จากการเป็นพี่คุม Lab โดนเรียกถามบ่อยมาก
ผลคือ เด็กไม่อ่านกัน จ้องจะถามอย่างเดียว]

เราจะเห็นได้ว่า มันเป็นแค่ ภาษาอังกฤษที่อ่านไม่ยากเท่าไรเลยนะ
ส่วนใหญ่จะบอกบรรทัดที่ Error ด้วย (ควรจะเปิด Line Number ของ Text Editor)
แต่บางทีก็ไม่เป๊ะหรอกนะ ให้มองสัก -2 บรรทัดที่มันบอกว่า Error จะดีมาก
(กรณีใน Lab ที่ม. ล่ะ เพราะใช้ GCC Compiler เป็นหลัก)

ลองหัดอ่านกันดูนะ ... มันไม่ได้ยากอะไรหรอก ช่วยให้แก้ปัญหาได้อย่างรวดเร็วด้วย ส่วนใหญ่ไม่อ่านกัน ... แต่ถ้าเป็น Error Message ที่ไม่เคยเห็นจริงๆ ล่ะก็ ...

วิธีที่ดีที่สุดคือ "copy Error Message and Paste tohttp://www.google.com/" :P

ดูตัวอย่างกัน !!
ขอเทียบ Error Message ระหว่าง GCC Compiler กับ Clang (LLVM Front End of C/C++/Objective-C)




จากภาพ Compile ครั้งแรก (gcc even_odd.cpp, clang even_odd.cpp)
จะเห็นว่า GCC บอกว่า เราลืม ; ก่อนคำสั่ง return ซึ่งอาจจะต้องกวาดสายตาดูบรรทัดด้านบน
แต่ถ้าใช้ Clang จะเห็นว่า มันบอกเราโจ้งๆ เลยว่า ตรงนี้ผิด ... Friendly กว่านิดหน่อย

ส่วนครั้งที่ 2 ผมพิมพ์ผิดจาก endl เป็น end (end line in C++)
และลืม วงเล็บปีกกาปิด สักที่นึงในโค้ด

อ่านรายละหยาบเพิ่มเติมเกี่ยวกับ Clang ได้ที่ http://clang.llvm.org/



สาเหตุหนึ่งที่เราไม่อ่านกัน อาจจะเป็นเพราะ

เด็กๆ หรือเด็กตัวโตๆ จะมีปัญหาที่ว่า ใช้ Text Editor ที่สวยเกินไป (Codeblock, Eclipse, etc.) ... จน Console ที่จะแสดง Log หรือ Error Message พวกนี้โดนบดบัง ใช้ ชีวิตสบายเกินไปกับ Ctrl + F9 (Build&Run in Codeblock) ลองมาลำบากกันดูซักนิดไหม :P

ลองมาหัดใช้ Command Line Compiling กันเถอะ (แบบที่เห็นจากภาพ)
แต่เราก็ต้องตั้งค่านิดหน่อย (บน Windows)
ผมเคยเขียนวิธีการไว้แล้วที่ Entry นี้

http://www.macbaszii.com/2012/01/command-line-compiling-cc-java-windows.html


Popular posts from this blog

12 วิธี การบริการและดูแลลูกค้าในร้าน Starbucks

"อีสุกอีใส" ประสบการณ์เมื่อต้องมาเป็นตอนอายุ 22

[Android Dev] การติดตั้ง Eclipse+AndroidSDK เพื่อพัฒนาโปรแกรมบน Android