บางครั้งฉันมีฟังก์ชั่นที่ควรกลับจริงหรือเท็จ แต่บางครั้งค่าสามค่าที่เป็นไปได้นั้นสมเหตุสมผลกว่า
ในบางกรณีภาษาเหล่านี้จะได้รับการจัดการด้วยจำนวนเต็มหรือมีข้อยกเว้น
สำหรับตัวอย่างที่คุณต้องการจัดการอายุของผู้ใช้ถ้าเขาอายุมากกว่า 18 ปี และคุณมีฟังก์ชั่นเช่นนี้
if(user.isAdult(country_code)){
//Go On
}else{
// Block access or do nothing
}
แต่ในบางกรณีขึ้นอยู่กับการสร้างแอปของคุณฉันสามารถดูกรณีที่ฟิลด์วันเกิดไม่สมบูรณ์ จากนั้นฟังก์ชั่นนี้จะคืนค่าบางอย่างที่ไม่ได้ระบุ
switch(user.isAdult()){
case true:
// go on
break;
case undetermined:
//Inform user birthday is incomplete
case false:
//Block access
}
อย่างที่ฉันบอกว่าเราสามารถจัดการกับมันด้วย Exceptions และ Int แต่ฉันคิดว่ามันค่อนข้างเซ็กซี่ที่จะมีการฝังตัวจริงที่เป็นเท็จและไม่ถูก จำกัด ในภาษาแทนที่จะใช้ค่าคงที่ที่กำหนดไว้ที่บ้าน