Ruby:
두 날짜 비교하기

How to: (어떻게 하나요?)

Ruby에서 날짜를 비교하는 것은 간단합니다. Date 클래스를 사용하여 두 날짜 객체를 생성하고, 그대로 비교 연산자를 적용합니다.

require 'date'

date1 = Date.new(2023, 4, 15)
date2 = Date.new(2023, 5, 20)

difference = date2 - date1
puts "The difference in days is: #{difference.to_i}"

if date1 < date2
  puts "date1 is earlier than date2."
else
  puts "date1 is the same or later than date2."
end

Sample output:

The difference in days is: 35
date1 is earlier than date2.

Deep Dive (깊이 탐구하기)

날짜를 비교하는 개념은 컴퓨터 과학에서 초기부터 사용되어 왔습니다. Date 클래스 밖에도, Ruby에는 시간과 날짜를 다루는 데 Time 클래스와 DateTime 클래스가 있습니다. 각각의 클래스는 다양한 목적에 따라 사용될 수 있으나, 날짜 비교의 경우에는 Date 클래스가 충분합니다.

예를 들어, Date 클래스는 과거의 어떤 날짜와 비교해서 기간을 계산할 때 유용하지만, 시간을 초 단위로 비교하고 싶다면 DateTime 혹은 Time 클래스가 더 적합할 수 있습니다.

데이트 클래스의 비교 연산자는 내부적으로 날짜의 숫자 표현을 비교합니다. 이것은 Gregorian calendar(그레고리력) 데이트를 Julian Day Number(줄리언 일수)로 변환하여 계산한 것을 사용합니다.

See Also (더 보기)