Debugging กนกวรรธน์ เซี่ยงเจ็น สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 2 เนื้อหา บทนำ ประเภทของข้อผิดพลาด วิธีการใช้งานเครื่องมือสำหรับ ตรวจสอบความผิดพลาด สรุป
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 3 บทนำ การตรวจสอบความผิดพลาด (Debugging) เป็นงานที่ใช้สำหรับหา bugs ของโปรแกรม และแก้ไข ข้อผิดพลาดนั้นให้ถูกต้อง เหมือนกับการที่ หมอ สอบถามและ วิเคราะห์อาการของผู้ป่วย โดยข้อผิดพลาดมักเกิดขึ้นกับ โปรแกรมเมอร์มือใหม่ ข้อผิดพลาดที่เกิดขึ้นมักจะเกิดขึ้น ได้ใน 3 ขั้นตอนดังต่อไปนี้
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 4 ขั้นตอนที่มักเกิด ข้อผิดพลาด Compilation อยู่ในขั้นตอนการเขียน โปรแกรม เป็นปัญหาที่เกิดขึ้นจาก ไวยากรณ์ (Syntax) ของการเขียน โดย VB จะมีการตรวจสอบไวยากรณ์ ระหว่างการเขียนโปรแกรมและแจ้ง เตือนโดยอัตโนมัติ Linking อยู่ในขั้นตอนของการเชื่อมโยง Library ต่างๆ ที่เราเรียกใช้งานใน โปรแกรม เพื่อให้สามารถนำโปรแกรม ที่เราพัฒนาขึ้นมา ไปติดตั้งยังเครื่อง คอมพิวเตอร์อื่นๆ ได้ Running อยู่ในขั้นตอนการใช้งาน โปรแกรม แล้วผลลัพธ์ที่ได้มีความไม่ ถูกต้อง ตามที่โปรแกรมเมอร์ต้องการ
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 5 ประเภทของข้อผิดพลาด Compilation Errors Run-time Errors Logical Errors
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 6 Compilation Errors VB จะมีการตรวจสอบไวยากรณ์ก่อน การ Compile โปรแกรมอยู่แล้ว อย่างไรก็ ดี ปัญหาที่มักพบบ่อยๆ ในขั้นตอนนี้ คือ การประกาศตัวแปร สะกดชื่อผิด การเรียกใช้งาน Method และ Property สะกด ชื่อผิด การกำหนดค่าพารามิเตอร์ หรือ อาร์กิวเมนต์ให้กับ Method ผิดพลาด การเปลี่ยนชนิดของข้อมูล เช่น จาก ตัวอักษร ไปเป็นตัวเลข
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 7 Run-time Errors เป็นปัญหาที่เกิดขึ้นขณะที่ Run โปรแกรม โดยเมื่อเกิดข้อผิดพลาด ประเภทนี้ โปรแกรมจะหยุดทำงาน ทันที เช่น การหาผลลัพธ์ทางคณิตศาสตร์ เช่น การหาร ด้วย ศูนย์ การใช้งานอาร์เรย์เกินขนาดที่ กำหนด การเรียกใช้งานวัตถุที่ไม่ถูกประกาศ หรือยังไม่ได้ Imports NameSpace เข้ามา เพื่อใช้งาน
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 8 Logical Errors ข้อผิดพลาดทางตรรกะ เป็น ข้อผิดพลาดที่แก้ไขได้ยากลำบาก เนื่องจากเป็นข้อผิดพลาดทีเกิด จากแนวคิดในการแก้ปัญหาของ ผู้พัฒนาโปรแกรมเอง เช่น ตรรกะผิดพลาด If(Score >= 80) OR (Score = 80) OR (Score <= 100) Then Grade = “A” ตรรกะถูกต้อง If(Score >= 80) AND (Score = 80) AND (Score <= 100) Then Grade = “A”
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 9 วิธีการใช้งานเครื่องมือสำหรับ ตรวจสอบความผิดพลาด เครื่องมือที่ใช้สำหรับตรวจสอบ ความผิดพลาดของโปรแกรมจะอยู่ ในเมนู Debug ประกอบด้วยวิธีการที่ สำคัญ คือ Breakpoints Watch Single stepping
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 10 Breakpoints คลิกบริเวณ ต้นบรรทัดที่ต้องการ ตรวจสอบ
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 11 Watch คลิกขวาที่ตัวแปรที่ต้องการตรวจสอบ ค่า เลือก Add Watch
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 12 Watch ผลลัพธ์ของตัวแปรที่ปรากฏใน หน้าต่าง Watch
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 13 Single Stepping เลือก Step Into หรือ Step Over เพื่อทำการดู ผลการ Run โปรแกรมทีละบรรทัด
สำนักวิชาเทคโนโลยีสารสนเทศ และการสื่อสาร มหาวิทยาลัยนเรศวร พะเยา 14 สรุป การ Debugging เป็นการค้นหา ข้อผิดพลาดที่เกิดขึ้นในโปรแกรม และ แก้ไขให้ถูกต้อง VB ได้มีการผสมผสานการแก้ไข ปัญหาเบื้องต้นไว้ในเครื่องมือที่ใช้ใน การพัฒนาแล้ว เพื่อช่วยอำนวยความ สะดวก Breakpoint เป็นตำแหน่งที่เราต้องการให้ โปรแกรมหยุด เพื่อตรวจสอบความ ถูกต้องอะไรบางอย่าง Watch สามารถช่วยให้เราตรวจสอบการ เปลี่ยนแปลงค่าของตัวแปร และวัตถุได้ ในระหว่างการทำ Breakpoint