TGViewer
iOS Dev iOS Dev @iosdev · 7.91K subscribers
Post #669 3.22K
Каждый, кто работал со временем в iOS (и не только) может попасть в ловушку заблуждений

Вот некоторые из них:

🔘 В сутках всегда 24 часа.
🔘 Системные часы всегда будут установлены на правильное местное время.
🔘 Если системные часы неверны, они, по крайней мере, всегда будут отставать на постоянное количество секунд.
🔘 Часы сервера и часы клиента всегда будут установлены на одно и то же время.
🔘 Ну, или часы сервера и часы клиента всегда будут установлены примерно на одно и то же время.
🔘 Хорошо, но время на часах сервера и время на часах клиента никогда не будут отличаться на несколько десятков лет.
🔘 Если часы сервера и часы клиента не синхронизированы, они, по крайней мере, всегда будут рассинхронизированы на постоянное количество секунд.
🔘 Время не имеет начала и конца.
🔘 Наименьшая единица времени — одна секунда.
🔘 Хорошо, одна миллисекунда.
🔘 Ок, тестирование может потребовать установки системного времени в значение, отличное от правильного местного времени, но в производстве это никогда не потребуется. 😎
🔘 В месяцах 28, 29, 30 или 31 день.
🔘 В одном и том же месяце везде одинаковое количество дней!
🔘 Смещение местного времени (от UTC) не изменяется в рабочее время.
🔘 Thread.sleep(1000) спит в течение 1000 миллисекунд.
🔘 Ладно. Если нет, то Thread.sleep(1000) спит в течение >= 1000 миллисекунд.
🔘 В каждой минуте 60 секунд.
🔘 Время всегда идет вперед.
🔘 Разница между текущим временем и одной неделей от текущего времени всегда составляет 7 * 86400 секунд.
🔘 Если вы отображаете дату, то отображаемое время имеет ту же вторую часть, что и хранимое время.
🔘 Или тот же год.
🔘 Ну, по крайней мере, числовая разница между отображаемым и хранимым годом будет меньше 2.
🔘 Существует только 24 часовых пояса.
🔘 Я могу легко поддерживать список часовых поясов самостоятельно.
🔘 Годы состоят из 365 или 366 дней.
🔘 Вы можете определить часовой пояс по городу/селу.
🔘 Время идет с одинаковой скоростью на вершине горы и на дне долины.
🔘 Один час длится столько же, сколько и следующий во всех системах времени.
🔘 Вы можете рассчитать, когда будут добавлены високосные секунды.
🔘 Программа никогда не будет работать на космическом корабле, вращающемся вокруг черной дыры. (Вы помните, что это всё заблуждения?)

Список основан на двух статьях: вот на этой и вот этой.

📖 Ах да, крутой материал про работу с датами в iOS специально для тех, кто дочитал пост.

@iOS Dev
  • 🔥 28
  • 👍 9
  • ❤‍🔥 6
  • 🤣 5
  • 🎃 2
  • ❤ 1
  • ⚡ 1
  • 😁 1
  • 🤯 1
  • 💯 1
  • 🏆 1
More from @iosdev
  1. Oct 5, 2026iPhone Duo UIKit Q&A: большая подборка ответов от инженеров Apple 📖 В своём блоге Антон с…
  2. Oct 1, 2026SwiftUI Charts и динамическое маскирование Одним из применений для диаграмм является разны…
  3. Sep 29, 2026⚡️Сегодня ночью десятки тысяч приложений массово начали крашиться из-за либы для аналитики…
  4. Sep 28, 2026От pbxproj к xcproj: разбор конфигураций проекта 📖 В этой статье можно посмотреть на новы…
  5. Sep 25, 2026Симулятор iPhone Duo: тестирование и оптимизация приложения Как только был анонсирован iPh…
  6. Sep 24, 2026Настоящая причина, почему на презентации не показали, как выглядит звонок с iPhone Duo. 😃…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →