何らかの状態を残すと何故、SingleResponsibilityに反するのか、そこがよく理解できていません。 加えて、「ガード節による入れ子条件記述の置き換え」というリファクタリングを適用すると、 メソッドの動作仕様には変化ないのに、なぜ、SingleResponsibilityに反してしまうのか、 という点が疑問です。 ものすごく簡単に書くと↓のどちらかって事だと思うのですが、このレベルではSingleResponsibilityは関係ないです。なぜなら十分に単純なので何かかが埋まっている可能性がないからです。もし、何かが埋まっているようならその実装は2つ以上に分けられる可能性が高いのでSingleResponsibilityに違反している可能性も高いということです。 public boolean hoge() { boolean result = false; if(someStat