Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

書籍 リーダブルコード | ガード節

パンくず

リーダブルコード
ガード節

概要

ガード節

内容

ネストしたif文やif-elsifなどが多くある場合に
ガード節を使用することで条件を単純に出来る。

サンプルコード

# encoding: Windows-31J

def get_next_character(character)
  if (character.nil?)
    return "nil"
  elsif (character.empty?)
    return "empty"
  else
    return character.succ
  end
end

# ガード節を使用した場合
def get_next_character_with_guard(character)
  return "nil" if character.nil?
  return "emply" if character.empty?
  return character.succ
end

puts get_next_character "a"
puts get_next_character ""
puts get_next_character nil
puts "-----------------------------"
puts get_next_character_with_guard "a"
puts get_next_character_with_guard ""
puts get_next_character_with_guard nil

出力

b
empty
nil
-----------------------------
b
emply
nil