refactoring - 编写 2-boolean 条件的最干净的方法(4 个分支)

标签 refactoring

我有这个代码。 true_varother_true_varboolean 值。四个条件分支是不同的。

if true_var && other_true_var:
    # do something 0
else if true_var && not other_true_var:
    # do something 1
else if not true_var && other_true_var:
    # do something else
else:
    # both are false, do a crazy thing

有没有一种“可接受”的方式来写这个?我可以将所有条件语句放入返回 bool 值的方法中,但这似乎有点过头了。

最佳答案

我会按以下方式进行最少的测试:

if (A)
{
  if (B) { // case 0 }
  else { // case 1 }
}
else
{
  if (B) { // something else }
  else { / crazy }
}

关于refactoring - 编写 2-boolean 条件的最干净的方法(4 个分支),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6376209/

相关文章:

Python自身属性重命名

javascript - 在 JS 问题中重构 jQuery

javascript - 如何最好地在 JavaScript 中重构这组跨多个方法的重复触发调用?

refactoring - 如何使用重构浏览器添加实例变量?

refactoring - 用进化或革命来修复写得不好的代码

cocoa - 如何重构调用 super 的代码中的口是心非

javascript - 如何在保持可维护性的同时分离关注点(JS、HTML)?

javascript 如何通过返回要执行的方法来简化此代码?

Haskell 重构建议

c++ - 使用 memcpy 或对结构中的数组赋值的访问冲突