Ruby on Railsで使える省略記法
RubyやRailsのコーディングをする際、省略記法を使うとコードが簡潔になり、読みやすさが向上します。特にリファクタリング時やシンプルな処理を記述する際に役立ちます。
if/unless文を1行で書く方法(後置if)
通常のif文やunless文は複数行にわたることが多いですが、簡単な条件、処理であれば1行で書くことができます。
通常のif文:
point = 7
day = 2
if day == 2
point += 10
end
point # => 17
1行のif文:
point = 7
day = 2
point += 10 if day == 2
point # => 17
三項演算子(条件演算子)
三項演算子を使うと、シンプルな条件分岐を1行で書くことができます。基本的な構文は次の通りです。
result = condition ? true_value : false_value
例:
n = 11
message = n > 10 ? ? '10より大きい' : '10以下'
message # => "10より大きい"
エンドレスメソッド定義
Ruby 3.0から導入されたエンドレスメソッド定義を使うと、シンプルなメソッドを1行で定義することができます。
通常のメソッド定義:
def greeting(name)
puts "こんにちは、#{name} さん!"
end
greeting('太郎') # => "こんにちは、太郎さん!"
エンドレスメソッド定義:
def greeting(name) = puts "こんにちは、#{name} さん!"
greeting('太郎') # => "こんにちは、太郎さん!"
このように、エンドレスメソッド定義を使うことで、メソッドの定義がより簡潔になります。ただし、Rubyのバージョンによってはこの機能がサポートされていない場合がありますので、使用する際には注意が必要です。
現在学習中なので随時、新しい省略記法やテクニックを学んで追加していきます!