ガード節を使おう
脳に優しい!
/ 2401
こんなコード書いてませんか?
/ 2402
/ 24
このコードを見た人は
03
/ 2404
死にます
/ 2405
こちらのコードはどうでしょう?
/ 2406
/ 2407
脳に優しい!
/ 2408
分かりやすい
優れたコード
脳に優しい
ひと目で理解できるコードの方が優れている。
/ 2409
ガード節を使おう!
/ 2410
ガード節とは
• 対象外の処理を省くコードを、関数等の先頭に
まとめる方法。
• ネストが浅くなり、例外処理と通常処理が分離
されるので何をするコードか分かりやすい。
/ 2411
ガード節の方法
• if 文の条件式を反転し、処理を外に出すだけ!
return や continue / break 等で処理を止める。
• メソッド・関数やループの先頭に例外処理を
まとめる。
/ 24
実際にガード節にしてみよう!
12 / 24
/ 2413
修正前
修正後
/ 2414
修正前
修正後ネストが深い
横に長いので見にくい 脳が拒否反応を起こす
/ 2415
修正前
修正後例外処理と通常処理が混ざっている
知りたい情報が直ぐに見つからない
/ 2416
修正前
修正後
ネストが深い 例外処理と通常処理が混ざっている
コードを理解するのに時間がかかる
/ 2417
修正前
修正後
/ 2418
修正前
修正後
ネストが浅い
条件式が縦に並ぶので見やすい 脳に優しい!
/ 2419
修正前
修正後
例外処理と通常処理が分離されている
各処理が強調され、処理の場所が分かりやすい
/ 2420
修正前
修正後
ネストが浅い 例外処理と通常処理が分離されている
一瞬でコードが理解できる
/ 2421
/ 2422
/ 2423
注意点
• ガード節は「めったに起きないが、起きた時には、
何もしないで出ていく」ことを伝えます。
• if - then - else は「両方が等しく起こり得る、等しく
重要である」ことを伝えます。
リファクタリング―プログラムの体質改善テクニックより
/ 2424
まとめ

ガード節を使おう