ฉันได้อ่านแล้วว่าเราควรจะจับข้อยกเว้นที่สามารถจัดการได้ซึ่งทำให้การจับคลาสยกเว้นฐาน (C # ในกรณีนี้) เป็นความคิดที่ไม่ดี (ด้วยเหตุผลอื่น) ปัจจุบันฉันเป็นส่วนหนึ่งของโครงการที่ฉันยังไม่เห็นอะไรเลยนอกจากข้อยกเว้นพื้นฐานที่ถูกจับได้ ฉันบอกว่ามันถือว่าเป็นการปฏิบัติที่ไม่ดี แต่การตอบสนองคือ "บริการนี้ต้องทำงานตลอด 24/7 ดังนั้นนี่คือวิธีที่มันเป็น"
เนื่องจากฉันไม่ได้รับการตอบรับที่ดีสำหรับวิธีการจัดการข้อยกเว้นในโปรแกรมที่ต้องการเรียกใช้ 24/7 อย่างถูกต้องฉันจึงมาที่นี่ ฉันไม่ได้หาข้อมูล / คำแนะนำเกี่ยวกับวิธีจัดการกับการจัดการข้อยกเว้นในโปรแกรม / บริการ "วิกฤติ" ที่ต้องทำงานตลอดเวลา (และในกรณีนี้ฉันเชื่อว่ามันอาจใช้ได้ถ้าบริการหยุดทำงานเป็นเวลาหนึ่งนาที หรือสองจึงไม่สำคัญ) ฉันเข้าใจว่ามันขึ้นอยู่กับลักษณะที่แน่นอนของโปรแกรม ข้อกำหนดสำหรับโปรแกรมที่อาจทำให้เกิดปัญหาการคุกคามต่อชีวิตแตกต่างกันมากเมื่อเทียบกับเครื่องสแกนบันทึกสำหรับเกมออนไลน์
สองตัวอย่าง:
1: บริการพิมพ์ล่วงหน้าสำหรับลูกค้าของรถไฟ Brittish ใช้เมื่อค้นหาออนไลน์สำหรับสถานีรถไฟ
2: โปรแกรมที่ควบคุมสวิตช์รถไฟสำหรับรถไฟเหนือโดยอัตโนมัติตามข้อมูลเรียลไทม์ที่ได้รับจากเซ็นเซอร์ต่าง ๆ ในแทร็ครถไฟ ฯลฯ
โปรแกรมแรกอาจไม่ทำให้เกิดปัญหาใหญ่หากลงไปหนึ่งหรือสองนาทีขณะที่หลังอาจทำให้เกิดการบาดเจ็บล้มตายของมนุษย์ ข้อเสนอแนะเกี่ยวกับวิธีการจัดการกับแต่ละคน? ชี้ไปที่ที่ฉันสามารถหาข้อมูลและความคิดเพิ่มเติมเกี่ยวกับปัญหานี้ได้หรือไม่
catch Exception
ล่ะ นั่นไม่ได้หมายความว่าโปรแกรมของคุณทำงานได้หมายความว่าความล้มเหลวทำให้สถานะแอปพลิเคชันได้รับความเสียหายในขณะที่มันยังทำงานต่อไปซึ่งเป็นสถานที่ที่อันตรายยิ่งกว่า ชนโปรแกรมอาจจะร้ายแรง แต่โปรแกรมที่อยู่ในสถานะที่ไม่ถูกต้อง แต่ยังคงดำเนินการที่มีประสิทธิภาพสามารถแข็งขันหายนะ