如何将基于枚举的系统更改为面向对象的结构?

时间:2018-03-08 12:30:34

标签: oop design-patterns switch-statement polymorphism

我有一个基于枚举的复杂结构。我想用面向对象的结构改变我的结构。你必须知道这有太多的状态。所以我在互联网上搜索,我找到了类似的解决方案 http://blogs.microsoft.co.il/gilf/2009/11/22/applying-strategy-pattern-instead-of-using-switch-statements/

Ways to eliminate switch in code

当我应用此解决方案时,会有太多课程。您怎么看待它,我应该这样申请。

1 个答案:

答案 0 :(得分:0)

是的,当然。你应该去战略解决方案。

根据我的经验,几乎从来没有过多的课程,正如你所说的那样。相反,代码越模块化,就越容易测试/维护/部署它。

你会遇到很多相反的问题:你认为的课程足够小而且没有理由改变,然后在要求改变或重构后你会看到你需要更多模块化。