Должен ли часовой пояс быть константой или переменной?

StackOverflow https://stackoverflow.com/questions/224940

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня есть несколько мест в коде, где мне нужно использовать TimeZone. Я могу получить название часового пояса, используя DateTime :: TimeZone . Разумно ли указывать название часового пояса в константе? Или это должно быть в переменной?

Это было полезно?

Решение

Если значение может измениться, используйте переменную, если она гарантированно останется прежней, используйте константу.

Для часового пояса вероятность того, что он изменится, невелика, но также не равна 0. Пользователь может изменить часовой пояс, и было бы неплохо, если бы программа вела себя соответствующим образом.

Другие советы

Я голосую за переменную. С вашим приложением могут работать разные пользователи в разных часовых поясах, даже если вы сомневаетесь, что это когда-нибудь произойдет. Это случилось со мной пару лет назад.

Посмотрите, откуда взялся часовой пояс. Это часовой пояс города? Сделайте это постоянным. Это часовой пояс пользователя? Сделайте его переменным - мы, пользователи, постоянно путешествуем, и мы сбрасываем часовой пояс на наших ноутбуках, чтобы планирование Outlook работало правильно на новом месте.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top