การยืนยัน ควรใช้เพื่อตรวจสอบสิ่งที่ไม่ควรเกิดขึ้น ในขณะที่ข้อยกเว้นควรใช้เพื่อตรวจสอบสิ่งที่อาจเกิดขึ้น ตัวอย่างเช่น ฟังก์ชั่นอาจหารด้วย 0 ดังนั้นควรใช้ข้อยกเว้น แต่สามารถใช้การยืนยันเพื่อตรวจสอบว่าฮาร์ดไดรฟ์หายไปอย่างกะทันหัน
คำยืนยันดีหรือไม่ดี
ไม่ ทั้ง goto หรือ assert ก็ไม่เลว แต่ทั้งสองสามารถใช้ในทางที่ผิด ยืนยันเป็นการตรวจสุขภาพจิต สิ่งที่ควรฆ่าโปรแกรมหากไม่ถูกต้อง
ทำไมคำยืนยันถึงไม่ดี
การยืนยันสามารถใช้เพื่อตรวจสอบค่าคงที่ของการใช้งานภายใน เช่น สถานะภายในก่อนหรือหลังการดำเนินการของวิธีการบางอย่าง เป็นต้น หากการยืนยันล้มเหลวจริง ๆ หมายความว่าตรรกะของโปรแกรมใช้งานไม่ได้และคุณทำได้' หายจากอาการนี้แล้ว.
คำยืนยันเป็นแนวปฏิบัติที่ดีไหม
คู่มือแนะนำภาษาสำหรับการยืนยันมีแนวทางที่ดี ซึ่งโดยพื้นฐานแล้วคือสิ่งที่ฉันเพิ่งอธิบายไป ใช่มันเป็นแนวปฏิบัติที่ดี. ในกรณีของ Spring มีความสำคัญเป็นพิเศษเนื่องจากการตรวจสอบกำลังตรวจสอบการตั้งค่าคุณสมบัติ ฯลฯ ที่มักจะมาจากไฟล์การโยง XML
ในกรณีใดบ้างที่การยืนยันมีประโยชน์
สมมติว่าโค้ดได้รับการทดสอบอย่างถูกต้อง การยืนยันนั้นมีประโยชน์หลายประการ: ตรวจพบข้อผิดพลาดเล็กน้อยที่อาจตรวจไม่พบ ตรวจพบข้อผิดพลาดหลังจากเกิดข้อผิดพลาดไม่นาน กว่าที่อาจจะตรวจพบได้ ออกแถลงการณ์เกี่ยวกับเอฟเฟกต์ของโค้ดที่รับประกันว่าเป็นจริง