[UNITY]2DRPG開発日誌 #63 if分岐を読みやすくする方法(ガードクローズ)

ガードクローズとは

こちらの記事に詳しいですが、要するに「メソッドの最初にreturnを置いてコードを整理する」という意味です。

例えば、プレイヤーの攻撃を行うこういうメソッドがあったとします。

読みにくいですね。ちょっと直すと、こんな書き方ができます。

あまり変わりませんね。人によっては前のほうが見やすいでしょう。

さらにちょっと直すと、こうなります。

だいぶスッキリしましたね。ただ、これでは拡張性がありません。

最後に、ガードクローズを使ってみましょう。

こうしてreturnするフラグが明確であれば、コード全体が読みやすく、かつ拡張性も担保できますね。場合によっては if(isBattle && isStanding) の部分を省略することすら可能です。