빠른 참조

Ruby 2.1 주요 기능 치트시트

Ruby 2.1에 도입된 주요 기능 빠른 참조 가이드: 필수 키워드 인수, def 메서드의 심볼 반환 및 유리수/복소수 리터럴.

· 게시일

Ruby 2.1은 필수 키워드 인수와 메서드 정의의 심볼 반환 등 주목할 만한 문법적 개선 사항을 도입했습니다.

필수 키워드 인수 (Required Keyword Arguments)

기본값이 지정되지 않은 키워드 인수는 반드시 전달해야 하는 필수 인수가 됩니다:

# length는 필수; char의 기본값은 '0'
def pad(number, length:, char: "0")
  number.to_s.rjust(length, char)
end

pad(42, length: 6) # => "000042"
pad(42)            # ArgumentError: missing keyword: :length

메서드 정의의 심볼 반환

Ruby 2.1+부터 def는 정의된 메서드 이름을 심볼로 반환하므로 인라인 수정자를 적용할 수 있습니다:

class User
  # 인라인으로 private 선언
  private def secret_token
    "secret"
  end

  # 모듈 데코레이터와 체이닝
  memoize def expensive_computation
    sleep 2
    42
  end
end

숫자 및 리터럴 개선

# 유리수 리터럴 접미사 'r'
2/3r # => (2/3)

# 복소수 리터럴 접미사 'i'
3 + 4i # => (3+4i)

# 문자열 동결 최적화: 'freeze'
"constant_string".freeze

참고 자료

관련 주제