目次
はじめに
エンジニア転職を目指している方、
「ガード節」を知っておくと転職の面接で有利になるかもしれません。
結論
ガード節を使っていないコード = 悪いコード
ガード節を使っているコード = 良いコード
悪いコード
PHP
//10以上90以下の数字で2の倍数だけ出力
for ($i = 1; $i <= 100; $i++) {
if (10 <= $i) {
if ($i <= 90) {
if ($i % 2 == 0) {
echo $i;
}
}
}
}
良いコード
PHP
//10以上90以下の数字で2の倍数だけ出力
for ($i = 1; $i < = 100; $i++) {
if ($i < 10) continue;
if (90 < $i) continue;
if ($i % 2 ==! 0) continue;
echo $i;
}
あけお
同じ出力結果になるのにコードのスッキリさが違うね!
図でイメージをつかもう
悪いコードのイメージ図
良いコードのイメージ図
ガード節とは?
- 読み方は「がーどせつ」
- 処理の対象外となる条件を早めに提示して処理を抜ける
- ネストを減らせてコードがすっきりする
「ここからは通しません!」というガードマン的なニュアンスです。
だからガード節って呼ぶんですね。
コードの解説
先ほどのコードを見ていきましょう!
悪いコード
PHP
//10以上90以下の数字で2の倍数だけ出力
for ($i = 1; $i <= 100; $i++) {
if (10 <= $i) {
if ($i <= 90) {
if ($i % 2 == 0) {
echo $i;
}
}
}
}
3行目
$iが10以上で
4行目
$iが90以下で
5行目
$iが2で割り切れるとき(2の倍数のとき)
6行目
$iを出力する
という意味になりますね。
ネスト構造になってるので読みにくいです。
ネスト構造とは?
if文の中にさらにif文があって、、みたいな構造のこと!
マトリョーシカ的な感じのこと!!
はっきり言って、ネスト構造のコードを見るとめっちゃ萎えます笑
初学者の方はこういうコードを書きがちですよね。。
(僕もこんな感じのコード書いてました笑)
良いコード
PHP
//10以上90以下の数字で2の倍数だけ出力
for ($i = 1; $i <= 100; $i++) {
if ($i < 10) continue;
if (90 < $i) continue;
if ($i % 2 !== 0) continue;
echo $i;
}
3行目
$iが10未満なら次のループへ
4行目
$iが90より大きいなら次のループへ
5行目
$iが2で割り切れないとき(2の倍数ではないとき)は次のループへ
6行目
次のループへいかなかった$iをここで出力する
まとめ
ガード節を知る = 「現場で通用するエンジニア」への第一歩!!
「ガード節」は現場だと当たり前のように出てきます。
ライバルに差をつけるためにもしっかり覚えておきましょう!!
また、コードをきれいに書くために、おすすめの本を紹介しておきます。
正直、初学者でこれ読んでないのは「本当にエンジニアになる気ある?」って思われます。
ちなみに僕はこれで勉強してから先輩に「コードが綺麗になったね!」と褒められました。
また、どうしても1人で学習が難しい方はこんなスクールがおすすめです!
あなたの挑戦を応援しています!!