0
0

【Ruby】オライリー本の備忘① ~rubyプログラムの構造と実行

Last updated at Posted at 2024-06-27

概要

プログラミング言語Rubyを読んでの備忘録
本の中の章ごとに分けることとする

識別子の記号

  • ?

booleanを返すメソッド名の末尾には疑問符をつける

example
def empty?(str)
  # booleanを返す処理
end
  • !

オブジェクト自身を破壊的に変更する場合につける

example
def sort!(arr)
  # 破壊的処理
end

改行

rubyでは四季が不完全な場合に解析が次の行に続く

example
total = x +  # 式が不完全なため解析が次の行に続く
  y

total = x  # 式が完全なため解析がここで終了する
  + y

行の中で最初に現れた空白以外の文字がピリオドである場合、
その行は前の行からの後続だと見なされる

example
animals = Array.new
  .push('dog')
  .push('cat')

メソッド呼び出し

rubyではメソッド呼び出しの()を省略することができる

# 以下二つは同義
f(3)
f 3

ただし、このやり方では動作が変わることがある

f(3+2)+1  # f(3+2)の実行結果に1を足す
f (3+2)+1  # fの引数に3+2+1を渡す

上記のようなことを防ぐために以下の二点をルール化する

  • メソッド名と()の間にはスペースを入れない
  • メソッド名の第一引数が()で始まる場合には、必ずメソッドの呼び出しには()を使う

ただ、引数がない場合のみ()を省略するというルールの方がわかりやすいような気がする

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0