Comments 21
Для вас банальная опечатка - это "преинтереснейшая ошибка"?
Как то оно античеловечно выглядит. И даты в java, и реализация задачи, и тестирование этого дела. как оно с лета работало, не привлекая внимание санитаров?
С лета оно работало потому, что все умные, а документацию пишут для дураков.
символ Y в аргументе для SimpleDateFormat отвечает за год, основанный на номере недели.
Как то контринтуитивно. Не могу представить, зачем оно.
У многих менеджеров планы расписаны по неделям.
Они даже могут не знать какое сегодня число, но всегда знают которая сейчас неделя, и когда будет делайн.
Но первую неделю года в разных системах вычисляю по-разному, где-то это первая неделя года, а где-то неделя в которой дней этого года больше чем прошлого.
Вещь очень важная в очень узких кругах.
Номер недели в году - допустим, ок, вещь нужная в узких кругах. Но пересчитывать номер недели в год - что за диверсант это придумал? Да ещё и протащил в потроха Java.
Ну а как вы со всем остальным миром, живущим в привычных датах, а не в номерах недель, взаимодействовать без конвертации собрались? Те же менеджеры — пусть живут в своих неделях, а рядовые исполнители работают с понедельника по пятницу и чихать им на то, какая это неделя в году.
Вот вам в таблице с еженедельным отчетом нужно, чтобы сегодня было написано "2025 - неделя 1". Какой символ форматирования вы будете использовать?
Каждый раз, когда я вижу год заданный ДВУМЯ цифрами, я вспоминаю рассказы о том, что "ошибка 2000" это вымысел. :)
Бывают случаи когда двух цифр для обозначения года достаточно, и переход на новое столетие пройдёт незаметно, ввиду того что твои файлы хранятся несколько месяцев.
Только за этот год это, наверное, четвёртая или пятая статья про разницу YYYY и yyyy в форматировании дат. Ребят, вы вообще в курсе, что люди старались, писали документацию?
Все писатели, один я читатель...
https://habr.com/ru/companies/pvs-studio/articles/869920/
И, кстати, поиском ещё несколько раз находится
Буквально вчера на проекте столкнулись с этим. Использовали YYYY вместо yyyy
Специально проверил поиском, нет ли у меня в проектах такой мины. Так то ерунда, но напороться на это - как нечего делать. Особенно, когда работа ведется на многих языках и на всех всё примерно одинаково. Но только примерно.
Известная штука. Писали недавно:
Ничего удивительного, согласно производственному календарю рабочий 2024 год закончился в субботу, 28 декабря. Зачем вы нарушаете Work-Life balance и работаете на праздниках?
Читайте JavaDoc до написания кода и будет вам счастье.
Конец года — новые баги с датами