我已经在使用多态(不知道反if运动),所以我对“坏”和“危险”的if很感兴趣,我查看了我的代码(Java / Swift / Objective-C)以看到我使用if的情况最多,看起来这些是情况:
- 检查空值。这是我使用if语句最常见的情况。如果一个值可能为null,我必须以正确的方式处理它。相反,我需要检查它不是null才能使用它。我不知道多态性如何在没有if语句的情况下弥补这一点。
- 检查正确的值。我将在这里举个例子:假设我有一个登录/注册应用程序。我想检查用户是否实际上写了密码,或者它是否超过5个字符。如果没有if/switch语句,这怎么可能完成?再次强调,这与类型无关,而与值有关。
- (可选)检查错误。这是可选的,因为它与第2点关于正确值类似。如果我在块/闭包中传递一个值或错误对象(作为参数),如果我不能检查它是否为null或不存在,我该如何处理错误对象?
如果您对此活动有更多了解,请在此范围内回答。我问这个问题是为了了解他们的目的以及他们所说的内容可以有效地完成的程度。
所以,我知道完全不使用if语句可能不是最明智的想法,但只是询问在OOP程序中是否可以有效地使用if语句以及如何使用。