Error Code อีกหนึ่งตัวช่วยเพื่อให้คุณ Debug อย่างเข้าใจ

Posted 31/05/2010 22:21 by pandula

วันนี้มีเทคนิคเล็กน้อยมาแนะนำกันครับ เนื่องมาจากช่วงที่ได้ช่วยงานพี่ nantcom ร่วมกับน้อง varavut เพื่อทำโปรแกรม Where2GO beta 2 ออกมานั้น ได้ติดปัญหาหลายๆอย่างระหว่างการพัฒนา เนื่องด้วยความใหม่ของเทคโนโลยี ทำให้การหาข้อมูลหลายๆอย่างเป็นไปได้อย่างจำกัด ซึ่งหนึ่งในปัญหาเหล่านี้ก็คือการ Debug โปรแกรมทีมี Error Message แปลกๆ นี่เอง

bug_no_400

เจ้า Error บางครั้งที่เราก็ไม่เข้าใจว่าเป็นเพราะอะไร พยายามอ่าน Error Message ก็แล้ว copy Error Message ไป search ก็แล้ว ก็ยังไม่พบคนที่จะอธิบายให้เราเข้าใจอย่างแท้จริงได้

เมื่อเจอเหตุการเช่นนี้แล้ว เราจะทำอย่างไรดี ?

หนทางหนึ่งที่ได้นำมาใช้ในระหว่างการพัฒนา Where2GO ที่ผ่านมา ก็คือการหาคำตอบด้วย Error Code ครับ

Error Code กับคอมพิวเตอร์นั้นมีมานานตั้งแต่แรกเริ่มเดิมทีเลยก็ว่าได้ ซึ่งเราอาจจะได้เห็นเวลาคอมพิวเตอร์เราเกิดปัญหา จอดับ บลูสกรีน ก็จะมี Error Code แสดงออกมาเพื่อระบุว่าปัญหาที่เกิดขึ้นกับคอมพิวเตอร์ของเราคืออะไร

แล้วมันเกี่ยวอะไรกับการ Debug โปรแกรม ?

ก็เพราะว่า ท่านทราบหรือไม่ว่า Error Code เหล่านี้ ใน Visual Studio ก็มีการแสดงผลเช่นเดียวกันเพื่อใช้ระบุว่า Bug ของเราเกิดจากสาเหตุใด แต่คิดว่าหลายๆคน คงจะไม่ได้สังเกตุ หรือใช้งาน Error Code เหล่านี้ เพราะ Visual Studio นั้นมีการแสดงผล Error Message อยู่แล้ว บวกกับการนำ Error Message ไป Search ก็จะพบคนที่ติดปัญหาแบบเดียวกัน และก็ได้อธิบายวิธีแก้ให้เราเรียบร้อย ซึ่งนั่นก็เป็นปกติทั่วไปครับ

แต่ถ้าเราเกิดกำลังพัฒนาด้วยเทคโนโลยีใหม่ หรืออะไรที่ชาวบ้านเขายังไม่ได้ทำกันแล้วล่ะก็ Error หลายๆ ตัว Search คงจะไม่เจอกันง่ายๆ อย่างแน่นอน ซึ่งถ้าแย่หน่อย (อย่างกรณีการพัฒนา Windows Phone ซึ่งถือว่าใหม่ทีเดียว) อาจจะถึงกับตันก็เป็นได้

Error Code ของ Visual Studio จะถูกแสดงผลออกทาง Output เป็น Code ที่มีรหัสแสดงชนิดของภาษาที่ใช้เขียน และหมายเลขประจำ Error นั้นๆ ยกตัวอย่างเช่น

error3

Error Code นี้จะประกอบด้วย CS เพื่อบอกภาษาที่ใช้เขียนและรหัส Error คือ 1661 ครับ ซึ่งเป็น Code ที่เกิดจาก Code นี้

error1

โดยเมื่อเรานำเอา Error Code ที่ได้ด้านบนคือ  CS1661 ไปทำการ Search ที่ MSDN ก็จะพบคำอธิบายโดยละเอียดเกี่ยวกับ Error นี้ ดังนี้

error2

เนื่องด้วยเหตุที่ MSDN ส่วนนี้จะทำการอธิบายด้วยข้อมูลที่เป็นกลาง ไม่อิงกับโปรแกรมที่เราเขียนขึ้นมา พร้อมด้วยมี Sample Code ง่ายๆ พร้อมกับ Comment บอกจุดที่โค้ดจะ Error ให้เห็นอย่างชัดเจน เพื่อบอกต้นเหตุที่แท้จริงของ Error ของเรา จึงสามารถช่วยให้เราเข้าใจ Error บางตัวที่มี Error Message ที่ยากจะเข้าใจได้อย่างง่ายดายครับ

About pandula

iPandula.net iPandula : Dev, is mind.

ร่วมให้กำลังใจนักเขียน

อ่านแล้วชอบใจ อยากให้กำลังใจกับผู้แต่งบทความนี้ ขอเชิญร่วมให้กำลังใจผ่าน Paysbuy/Paypal นะครับ ปลอดภัยเพราะทำงานผ่าน SSL และไม่มีค่าใช้จ่ายเพิ่มเติมครับ เว็บเราให้นักเขียน 100% ครับ

Comment ระบบเก่า

 

giffy2499 said:

ขอบคุณคับ เป็นประโยชน์มากเลยทีเดียวคับ

June 1, 2010 9:34 AM
 

PGiZ said:

เป็นเทคนิคที่ดีที่หลายคน (ผมด้วย) มองข้ามไปซะได้

June 2, 2010 10:05 AM
 

pandula said:

^^

June 2, 2010 2:21 PM
(required)  
(optional)
(required)  
Add

DisQUS Comment (ยังเอ๋อๆ อยู่)

blog comments powered by Disqus