ฉันประหลาดใจที่ไม่มีใครให้คำตอบที่ชัดเจนและฉันสงสัยว่าเป็นคำที่ใช้บ่อยที่สุดในทางปฏิบัติ: อย่าเพิ่งอ่านข้อความแสดงข้อผิดพลาด
คุณค่าส่วนใหญ่ของข้อความแสดงข้อผิดพลาดคือสิ่งที่ผิดปกติในบรรทัดดังกล่าวและเช่นนั้น เวลาส่วนใหญ่ฉันเพิ่งดูหมายเลขบรรทัดและไปที่บรรทัดนั้น "การอ่าน" ข้อความแสดงข้อผิดพลาดของฉัน ณ จุดนั้นมักเป็นสิ่งที่สายตาของฉันจับได้ผ่านไม่ใช่สกิม หากไม่ชัดเจนในทันทีว่ามีอะไรผิดปกติหรือใกล้กับเส้นจากนั้นฉันจะอ่านข้อความจริง เวิร์กโฟลว์นี้ดียิ่งขึ้นด้วย IDE หรือเครื่องมือที่เน้นข้อผิดพลาดในจุดนั้นและทำตามคำแนะนำของ Karl Bielefeldt โดยอัตโนมัติเพื่อพิจารณาการเปลี่ยนแปลงเพียงเล็กน้อยเท่านั้น
แน่นอนว่าข้อความแสดงข้อผิดพลาดไม่ได้ชี้ไปที่บรรทัดที่เหมาะสมเสมอไป แต่บ่อยครั้งที่ข้อความเหล่านั้นไม่ได้ชี้ไปที่สาเหตุที่เหมาะสมดังนั้นแม้ความเข้าใจที่สมบูรณ์เกี่ยวกับข้อความแสดงข้อผิดพลาดก็อาจช่วยได้ จำกัด ใช้เวลาไม่นานในการรับทราบว่าข้อความแสดงข้อผิดพลาดใดน่าเชื่อถือมากขึ้นเกี่ยวกับการค้นหาบรรทัดที่เหมาะสม
ในอีกด้านหนึ่งข้อผิดพลาดส่วนใหญ่มักจะทำให้ผู้ฝึกหัดมีความเจ็บปวดอย่างเห็นได้ชัดสำหรับโปรแกรมเมอร์ที่มีประสบการณ์โดยไม่ต้องการความช่วยเหลือจากคอมไพเลอร์ ในทางกลับกันพวกเขามีโอกาสน้อยที่จะเป็นสามเณรอย่างชัดเจน (แม้ว่าจะมีหลายคนที่เห็นได้ชัด แต่ความผิดพลาดส่วนใหญ่เป็นความผิดพลาดที่โง่) เมื่อมาถึงจุดนี้ฉันเห็นด้วยอย่างสมบูรณ์กับโรเบิร์ตฮาร์วีย์สามเณรก็ต้องคุ้นเคยกับภาษามากขึ้น ไม่มีการหลีกเลี่ยงสิ่งนี้ ข้อผิดพลาดของคอมไพเลอร์ที่อ้างอิงแนวคิดที่ไม่คุ้นเคยหรือดูเหมือนน่าประหลาดใจควรถูกมองว่าเป็นพรอมต์เพื่อให้ความรู้เกี่ยวกับภาษานั้นลึกซึ้งยิ่งขึ้น ในทำนองเดียวกันสำหรับกรณีที่คอมไพเลอร์บ่น แต่คุณมองไม่เห็นสาเหตุที่รหัสผิด
อีกครั้งฉันเห็นด้วยกับ Robert Harvey ว่าต้องใช้กลยุทธ์ที่ดีกว่าในการใช้ข้อผิดพลาดของคอมไพเลอร์ ฉันได้อธิบายบางประเด็นไว้ด้านบนและคำตอบของ Robert Harvey ให้แง่มุมอื่น ๆ มันยังไม่ชัดเจนว่าเพื่อนของคุณหวังจะทำอะไรกับ "อภิธานศัพท์" และมันไม่น่าเป็นไปได้มากที่คำว่า "อภิธานศัพท์" จะเป็นประโยชน์กับเพื่อนของคุณ ข้อความคอมไพเลอร์ไม่ใช่สถานที่สำหรับการแนะนำแนวคิดของภาษา1และ "อภิธานศัพท์" ไม่ใช่สถานที่ที่ดีกว่าสำหรับมันมากนัก แม้ว่าจะมีคำอธิบายที่ชัดเจนว่าข้อความแสดงข้อผิดพลาดหมายถึงอะไร แต่ก็ไม่สามารถบอกวิธีแก้ไขปัญหาได้
1ภาษาสองสามภาษาเช่น Elm และ Dhall (และอาจเป็นแร็กเก็ต) เช่นเดียวกับการใช้ภาษา "เริ่มต้นที่มุ่งเน้น" จำนวนน้อยพยายามที่จะทำสิ่งนี้ ในหลอดเลือดดำนี้คำแนะนำของ MSalters ในการใช้การดำเนินการที่แตกต่างนั้นมีความเกี่ยวข้องโดยตรง โดยส่วนตัวแล้วฉันพบว่าสิ่งต่าง ๆ ไม่น่าสนใจและไม่ได้มีจุดมุ่งหมายเพื่อแก้ไขปัญหาที่เหมาะสม นี่ไม่ใช่การบอกว่าไม่มีวิธีที่จะทำให้เกิดข้อความแสดงข้อผิดพลาดได้ดีขึ้น แต่สำหรับพวกเขาพวกเขามีแนวโน้มที่จะหมุนไปรอบ ๆ เพื่อทำให้ความเชื่อของผู้แปลและพื้นฐานของความเชื่อเหล่านั้นชัดเจนขึ้น