CFAbsoluteTime
vs Date
Swift에서 현재 시간을 취하는 방법 두가지가 있다.
func CFAbsoluteTimeGetCurrent() -> CFAbsoluteTime
Core Foundation Framework의 Time Utilities에 있는 메서드이다.
현재 시스템의 절대적인 시간(Absolute time)을 리턴한다.
Absolute time은 "Jan 1 2001 00:00:00 GMT"를 기준으로 몇초가 경과했는지 계산한다.
CFAbsoulteTime
은 CFTimeInterval
의 typealias로, 경과한 시간을 초 단위로 Double을 사용해서 표현한다.
typealias CFTimeInterval = Double
Date
특정 calendrical system 이나 time zone과 독립적으로 single point in time을 만들 수 있다.
struct Date
A specific point in time, independent of any calendar or time zone.
date를 만드는 것 외에도, date간에 비교, date간의 interval을 계산, date range를 만드는 것과 같은 다양한 기능을 제공하는 구조체이다.