Есть ли причина использовать Joda Time, если я могу использовать Java 8 Date and Time API (java.time
)?
Должен ли я использовать Java 8 Date и Time каждый раз?
Является ли Joda Time устаревшим с API-интерфейсом java 8 Date и Time? (Java.time)
Ответ 1
Официальное выражение автора самого Joda-time заключается в миграции, как только Java-8 доступен. См. Также эту цитату из веб-сайт:
Обратите внимание, что Joda-Time считается в значительной степени "готовым" проектом. Никаких существенных усовершенствований не планируется. Если вы используете Java SE 8, к java.time(JSR-310).
Итак, короткий ответ на ваш вопрос: ДА (устарело). Однако имейте в виду, что некоторые функции, такие как Joda- Interval
или PeriodType
или PeriodFormatter
, недоступны в Java-8, поэтому вам нужно написать свои собственные частично уродливые обходные пути, см. Также my SO-post о различиях между Joda-Time и JSR-310.
Боковые замечания о будущем обеих библиотек:
Что означает "законченный" в этом контексте?
Хорошо, вы можете сравнить Joda-issue 254 с моим small обсуждение в Twitter. Я думаю, что люди должны скорее отложить свои ожидания от любого крупного улучшения Joda-Time. Также учтите, что будущие ресурсы развития, касающиеся Joda-Time, ограничены (нехватка рабочей силы). И пусть честно: в большинстве выпусков, поскольку Joda-Time в 2008 году скорее имеет характер выпусков исправлений (за исключением 2.0).
С другой стороны: скорость инноваций JSR-310, вероятно, тоже будет не очень высокой (потому что она уже большая, и поскольку Oracle здесь, решающий игрок и дата-время-библиотека вообще не рассматриваются как центральный краеугольный камень любого Java-релиза). Поэтому в будущем для внешней библиотеки остается некоторое пространство для предоставления отсутствующих функций.