미래나 과거의 날짜 계산하기

Clojure:
미래나 과거의 날짜 계산하기

How to: (방법)

;; clojure.java.time 라이브러리를 사용합니다.

(require '[java-time :as jt])

;; 오늘 날짜를 구합니다.
(def today (jt/local-date))

;; 10일 후
(def ten-days-later (jt/plus-days today 10))

;; 10일 전
(def ten-days-before (jt/minus-days today 10))

(println "오늘: " today)
(println "10일 후: " ten-days-later)
(println "10일 전: " ten-days-before)

출력:

오늘: 2023-04-03
10일 후: 2023-04-13
10일 전: 2023-03-24

Deep Dive (심층 분석)

날짜 계산을 위해 Clojure에서는 clojure.java.time 라이브러리를 주로 사용합니다. 이는 Joda-Time 라이브러리에 영감을 받은 자바 8의 java.time 패키지를 래핑한 것입니다. 이전에는 clj-time 라이브러리가 많이 쓰였지만, 현재는 clojure.java.time이 표준으로 자리잡고 있습니다.

더 많은 날짜 관련 연산이 필요하다면 .plusWeeks, .plusMonths 같은 메서드를 사용할 수도 있습니다. 타임존을 다루려면 jt/zoned-date-time 인스턴스로 작업합니다. 내부적으로는 자바의 java.time 라이브러리와 같은 원리로 작동하니, 자바의 날짜와 시간 API에 대한 이해가 도움이 됩니다.

See Also (관련 링크)