我经常遇到由于使用该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原因造成的。