ภาษาการเขียนโปรแกรมบางอย่างเช่น Scala มีแนวคิดของOption
ประเภท (เรียกอีกอย่างว่าMaybe
) ซึ่งสามารถมีค่าหรือไม่
จากสิ่งที่ฉันได้อ่านเกี่ยวกับพวกเขาพวกเขาได้รับการพิจารณาอย่างกว้างขวางว่าเป็นวิธีที่ดีกว่าในการจัดการกับปัญหานี้มากกว่าnull
เพราะพวกเขาบังคับให้โปรแกรมเมอร์พิจารณากรณีที่อาจไม่มีค่าแทนที่จะระเบิดในระหว่างรันไทม์
การตรวจสอบข้อยกเว้นใน Java ในทางกลับกันดูเหมือนจะถือว่าเป็นความคิดที่ไม่ดีและ Java ดูเหมือนจะเป็นภาษาที่ใช้กันอย่างแพร่หลายเท่านั้นที่ใช้พวกเขา แต่แนวคิดที่อยู่เบื้องหลังพวกเขาดูเหมือนจะค่อนข้างคล้ายกับOption
ประเภทเพื่อบังคับให้โปรแกรมเมอร์จัดการกับข้อเท็จจริงที่ว่าอาจมีข้อยกเว้นเกิดขึ้น
มีปัญหาเพิ่มเติมเกี่ยวกับข้อยกเว้นที่ตรวจสอบแล้วซึ่งOption
ประเภทไม่มีหรือไม่ หรือแนวคิดเหล่านี้ไม่เหมือนกันอย่างที่ฉันคิดและมีเหตุผลที่ดีในการบังคับให้จัดการอย่างชัดเจนสำหรับตัวเลือกไม่ใช่สำหรับข้อยกเว้น?
Either e a
ประเภทข้อมูล