C# 重构ifs
我如何重构下面的代码,其中包含许多ifs,每个块包含不同的场景C# 重构ifs,c#,refactoring,C#,Refactoring,我如何重构下面的代码,其中包含许多ifs,每个块包含不同的场景 if(condition1) { ConfigCondition1(); GetSetCondition1Results(); } if(condition2) { ConfigCondition2(); GetSetCondition2Results(); } if(condition3) { ConfigCondition3(); GetSetCondition3Results(); } 似乎最适合你的
if(condition1)
{
ConfigCondition1();
GetSetCondition1Results();
}
if(condition2)
{
ConfigCondition2();
GetSetCondition2Results();
}
if(condition3)
{
ConfigCondition3();
GetSetCondition3Results();
}
似乎最适合你的问题
使用策略模式,客户机可以从已实现的一组算法中选择在运行时执行哪个算法 使用
strategy模式将算法封装在对象中,并帮助您将条件语句重构为简单的函数调用
您可以使用的。遵循此指南
- 所有
语句是否与相同的值进行比较?如果是,使用if
块开关
- 一个
块是否排除了其他块?如果是,请在时使用if
else
- 一个块是否依赖于另一个块的值?如果是的话,把它们一个套在另一个里面
- 如果上述任何一项都不存在,即不管怎样,都必须检查所有块,那么就不能再进行优化