Ответ
UTC (Coordinated Universal Time) — это всемирный стандарт времени, основанный на высокоточных атомных часах. Это нейтральная временная зона, которая служит точкой отсчёта для всех остальных часовых поясов на планете.
Зачем он нужен в IT? Для устранения неоднозначности. Хранение и передача времени в UTC — это best practice, которая предотвращает ошибки, связанные с разными часовыми поясами пользователей, серверов и переходом на летнее время.
Примеры работы с UTC:
1. Получение текущего времени в UTC:
// JavaScript
const nowUTC = new Date().toISOString(); // "2024-03-14T12:34:56.789Z"
// Суффикс 'Z' означает 'Zulu time', то есть UTC.
# Python
from datetime import datetime, timezone
now_utc = datetime.now(timezone.utc)
print(now_utc.isoformat()) # 2024-03-14T12:34:56.789+00:00
2. Важные принципы:
- Храните в UTC: Все метки времени в базах данных, логах и API должны храниться в UTC.
- Преобразуйте для отображения: Конвертируйте UTC в локальный часовой пояс пользователя только на уровне представления (в UI).
- Не путать с GMT: GMT (Greenwich Mean Time) — это часовой пояс, а UTC — более точный стандарт. В практическом программировании их часто считают эквивалентными.
- Игнорирование DST: UTC не имеет перехода на летнее время, что упрощает расчёты.
Формат: Стандартный строковый формат — ISO 8601, например, 2024-03-14T12:34:56Z.