我有一个逻辑情况,最好将其描述为两个“团队”试图赢得一项任务。此任务的结果可能是一个获胜者、平局(平局)或没有获胜者(僵局)。
目前,我正在使用这样的嵌套 if/else 语句:
// using PHP, but the concept seems language agnostic.
if ($team_a->win()) {
if ($team_b->win()) {
// this is a draw
} else {
// team_a is the winner
}
} else {
if ($team_b->win()) {
// team_b is the winner
} else {
// This is a stalemate, no winner.
}
}
这似乎有点像意大利面条和重复。我可以使用更合乎逻辑的 DRY 模式吗?