|
28 | 28 | - **직관적인 중위 함수**: `LocalDate`와 `LocalTime`을 결합하여 `LocalDateTime`을 만들거나,
|
29 | 29 | 두 `LocalDate` 인스턴스 간의 차이를 계산하는 등, 기존 메서드를 사용하는 것보다 직관적인 문법을 제공합니다.
|
30 | 30 |
|
31 |
| -## kotlinx-datetime 비교 |
| 31 | +## 핵심 개념 |
32 | 32 |
|
33 |
| -`kotlinx-datetime`은 시간대를 포함한 civil time(상용시)을 다루는데 특화된 라이브러리입니다. |
34 |
| -예를 들어, kotlinx-datetime은 모든 시간 객체에 시간대 정보를 포함시키며, |
35 |
| -이를 통해 로컬 시간대(예: UTC+9)와 관련된 작업을 쉽게 처리할 수 있습니다. |
36 |
| -이 라이브러리는 시간대 정보가 필요하지 않은 단순한 연산(예: 한 달 더하기)도 지원합니다. |
| 33 | +`java-time-extensions`는 **생성**, **기간**, **연산**, **분해**, **결합**, **비교**, **포맷팅**을 위한 다양한 확장 함수를 제공합니다. |
37 | 34 |
|
38 |
| -반면, `java-time-extensions`는 `java.time.*` 패키지를 기반으로 하여, |
39 |
| -기존의 API를 더 편리하게 사용할 수 있도록 돕는 확장 기능을 제공합니다. |
40 |
| -`kotlinx-datetime`처럼 새로운 엔티티나 시간대에 대한 복잡한 처리를 추가하지는 않습니다. |
41 |
| -대신, `java.time.*` 패키지를 사용하는 **Kotlin 사용자**들이 더 쉽게 날짜와 시간을 다룰 수 있도록 하는 것이 이 라이브러리의 주된 목적입니다. |
| 35 | +### 생성 |
| 36 | + |
| 37 | +`java-time-extensions`는 다양한 타입으로부터 `java.time.*` 인스턴스를 생성할 수 있는 확장 함수를 제공합니다. |
| 38 | + |
| 39 | +```kotlin |
| 40 | +val date: LocalDate = "2021-01-01".toLocalDate() // 2021-01-01 |
| 41 | +``` |
| 42 | + |
| 43 | +### 기간 |
| 44 | + |
| 45 | +`java-time-extensions`는 기간 개념을 다루는 확장 기능을 제공합니다. |
| 46 | + |
| 47 | +```kotlin |
| 48 | +val period: Pariod = 1.days // P1D |
| 49 | +``` |
| 50 | + |
| 51 | +### 연산 |
| 52 | + |
| 53 | +`java-time-extensions`는 날짜 및 시간 인스턴스의 연산을 위해 확장 기능을 제공합니다. |
| 54 | + |
| 55 | +```kotlin |
| 56 | +val date: LocalDate = "2021-01-01".toLocalDate() + 1.days // 2021-01-02 |
| 57 | +``` |
| 58 | + |
| 59 | +### 분해 |
| 60 | + |
| 61 | +`java-time-extensions`는 날짜 및 시간 인스턴스를 분해하는 확장 기능을 제공합니다. |
| 62 | + |
| 63 | +```kotlin |
| 64 | +val year: Year = "2021-01-01".toLocalDate().toYear() // 2021 |
| 65 | +``` |
| 66 | + |
| 67 | +### 결합 |
| 68 | + |
| 69 | +`java-time-extensions`는 날짜 및 시간 인스턴스를 결합하는 확장 기능을 제공합니다. |
| 70 | + |
| 71 | +```kotlin |
| 72 | +val dateTime: LocalDateTime = "2021-01-01".toLocalDate() at "12:00".toLocalTime() // 2021-01-01T12:00 |
| 73 | +``` |
| 74 | + |
| 75 | +### 비교 |
| 76 | + |
| 77 | +`java-time-extensions`는 날짜 및 시간 인스턴스를 비교하는 확장 기능을 제공합니다. |
42 | 78 |
|
43 |
| -따라서 `java-time-extensions`는 `kotlinx-datetime`을 대체하기 위한 것이 아니라, |
44 |
| -이미 `java.time.*`을 사용하고 있는 Kotlin 개발자들에게 **더 나은 개발 경험을 제공**하는 데 초점을 맞추고 있습니다. |
| 79 | +```kotlin |
| 80 | +val period: Period = "2021-01-01".toLocalDate() betweeb "2021-02-01".toLocalDate() // P1M |
| 81 | +``` |
| 82 | + |
| 83 | +### 포맷팅 |
| 84 | + |
| 85 | +`java-time-extensions`는 날짜 및 시간 인스턴스를 포맷팅하는 확장 기능을 제공합니다. |
| 86 | + |
| 87 | +```kotlin |
| 88 | +val string: String = "2021-01-01".toLocalDate().toString("yyyyMMdd") // 20210101 |
| 89 | +``` |
| 90 | + |
| 91 | +## kotlinx - datetime 비교 |
| 92 | + |
| 93 | +`kotlinx-datetime` 은 시간대를 포함한 civil time (상용시) 을 다루는데 특화된 라이브러리입니다. |
| 94 | +예를 들어, kotlinx - datetime은 모든 시간 객체에 시간대 정보를 포함시키며, |
| 95 | +이를 통해 로컬 시간대 (예: UTC + 9)와 관련된 작업을 쉽게 처리할 수 있습니다. |
| 96 | +이 라이브러리는 시간대 정보가 필요하지 않은 단순한 연산 (예: 한 달 더하기)도 지원합니다. |
| 97 | + |
| 98 | +반면, `java-time-extensions` 는 `java.time.*` 패키지를 기반으로 하여, |
| 99 | +기존의 API를 더 편리하게 사용할 수 있도록 돕는 확장 기능을 제공합니다. |
| 100 | +`kotlinx-datetime` 처럼 새로운 엔티티나 시간대에 대한 복잡한 처리를 추가하지는 않습니다. |
| 101 | +대신, `java.time.*` 패키지를 사용하는 Kotlin 사용자들이 더 쉽게 날짜와 시간을 다룰 수 있도록 하는 것이 이 라이브러리의 주된 목적입니다. |
| 102 | +따라서 `java-time-extensions` 는 `kotlinx-datetime` 을 대체하기 위한 것이 아니라, |
| 103 | +이미 `java.time.*` 을 사용하고 있는 Kotlin 개발자들에게 **더 나은 개발 경험을 제공** 하는 데 초점을 맞추고 있습니다. |
45 | 104 |
|
46 | 105 | ## Gradle 설정
|
47 | 106 |
|
|
0 commit comments