gpt4 book ai didi

oop - 避免 if 语句

转载 作者:行者123 更新时间:2023-12-03 07:22:21 27 4
gpt4 key购买 nike

我今天在考虑面向对象设计,我想知道是否应该避免 if 语句。我的想法是,在任何需要 if 语句的情况下,您都可以简单地创建两个实现相同方法的对象。这两个方法实现只是原始 if 语句的两个可能的分支。

我意识到这看起来很极端,但似乎你可以尝试在某种程度上争论它。对此有什么想法吗?

编辑

哇,这并没有花很长时间。我想这实在是太极端了。但是否可以说,在 OOP 下,您应该期望更少的 if 语句?

第二次编辑

这个怎么样:一个根据其属性确定其方法实现的对象。也就是说你可以通过两种方式实现someMethod()并指定一些限制。在任何时候,对象都会根据其属性路由到正确的方法实现。因此,在 if(x > 5) 的情况下,只有两个依赖于 x 属性的方法

最佳答案

我可以告诉你一件事。无论人们怎么说,考虑简化和消除不必要的分支是您作为软件开发人员成熟的标志。分支不好的原因有很多,测试、维护、错误率较高等等。这是我在面试人员时寻找的东西之一,也是他们作为开发人员成熟程度的一个很好的指标。我鼓励您继续尝试,通过使用更少的条件来简化代码和设计。当我进行此切换时,我发现调试代码的时间少了很多,它很简单,然后当我必须更改某些内容时,更改非常容易,因为大多数代码都是连续的。我再次鼓励你 100% 继续做你正在做的事情,不管别人怎么说。请记住,大多数开发人员的工作和思考水平要低得多,并且只是遵循规则。提出这个问题真是太好了。

关于oop - 避免 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1337565/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com