我经常遇到由于使用该ELSE
构造而导致的错误。一个典型的例子是:
If (passwordCheck() == false){
displayMessage();
}else{
letThemIn();
}
对我来说,这是安全问题。我知道passwordCheck可能是布尔值,但是我不会将应用程序的安全性放在上面。如果它是字符串,int等会怎样?
我通常会尝试避免使用ELSE
,而是选择两个完全独立的IF语句来测试我的期望。然后,其他任何东西都将被忽略,或者将被专门处理。
当然,这是防止错误/安全问题进入您的应用程序的更好方法。
你们是如何做到的?
I know that passwordCheck is likely to be a boolean...
你什么意思?任何强类型的语言。passwordCheck
将成为您想要的任何东西。
else
语句会导致更多的错误……
passwordCheck()
可能不是布尔值的可能的返回类型(这可能是一个合理的问题),然后将其归咎于此else
?我看不出是什么else
原因造成的。