Câu trả lời là: nó phụ thuộc
JODA (và JSR-310) là một thư viện ngày / giờ đầy đủ chức năng, bao gồm hỗ trợ để sử dụng với nhiều hệ thống lịch.
Cá nhân tôi thấy JODA là một bước đi quá xa về độ phức tạp cho những gì tôi cần. 2 lỗi chính (IMHO) trong java Date
và Calendar
các lớp tiêu chuẩn là:
- Họ là đột biến
- Họ trộn lẫn khái niệm một ngày trong tháng từ một thời gian tức thì
Mặc dù những điều này được giải quyết bởi JODA, nhưng bạn sẽ thấy khá dễ dàng để cuộn các lớp của riêng mình YearMonthDay
và Instant
cả hai đều sử dụng các lớp java dưới mui xe để tính toán "lịch" thực tế. Sau đó, bạn không cần phải tự làm quen với API> 100 lớp, một cơ chế định dạng / phân tích cú pháp khác, v.v.
Tất nhiên, nếu bạn cần thể hiện đầy đủ các niên đại khác nhau (ví dụ: tiếng Do Thái) hoặc muốn có thể xác định hệ thống Lịch tưởng tượng của riêng bạn (ví dụ: đối với trò chơi bạn đang viết) thì có lẽ JODA hoặc JRS-310 là dành cho bạn. Nếu không, sau đó tôi sẽ đề nghị rằng lăn của riêng bạn có thể là cách để đi.
Người dẫn đầu về thông số kỹ thuật của JSR-310 là Stephen Colebourne, người đã viết JODA ở vị trí số 1, do đó sẽ thay thế một cách hợp lý JODA.