Подтвердить что ты не робот

Если сообщения об исключении должны быть глобализованы

Я работаю над проектом, и я только начинаю делать всю работу, необходимую для глобализации приложения. Очень часто возникает вопрос о том, следует ли глобализовать сообщения об исключениях, но при условии, что string.Format использует CultureInfo.CurrentCulture вместо CultureInfo.InvariantCulture. Кроме того, это означало бы, что сообщения об исключениях будут храниться в файлах ресурсов, которые могут быть помечены как относящиеся к культуре.

Итак, вопрос в том, должны ли сообщения об исключениях быть глобализованы или должны быть оставлены либо в InvariantCulture, либо в стране-авторе; в моем случае en-US.

4b9b3361

Ответ 1

Сообщения об исключении редко отображаются непосредственно пользователю. Вы должны думать о потребителе для каждой строки. Очевидно, что фрагменты текста в пользовательском интерфейсе нуждаются в интернационализации, но если сообщение об исключении будет видно только по поддержке (или оно будет видимым для пользователя, а затем отправлено по электронной почте для поддержки при нажатии кнопки), тогда, когда преимущество перевод?

Если вы заходите слишком далеко, вы можете не только тратить время и силы (и я могу приложить немало усилий), но вы также сделаете вашу жизнь поддержки более сложной. Вы действительно не хотите читать файлы журналов, написанные на иностранном языке, и переводить их на свой родной язык.

Для Microsoft имеет смысл интернационализировать свои сообщения об исключениях, поскольку они будут прочитаны разработчиками со всего мира, но если вы не являетесь многонациональным разработчиком в разных странах, которые не имеют общего языка, t переводят сообщение, которое действительно предназначено для dev/support.

Ответ 2

обычно, я этого не делаю.

Локализуйте строки, которые могут видеть пользователи, и вы не позволяете своим сообщениям об исключениях перколить до пользовательского интерфейса, правильно?

Правильно?:)

Ответ 3

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

Ответ 4

Я предполагаю, что глобализация означает i18n, который обычно называется интернационализацией. Да, интернационализировать все видимые части графического интерфейса, включая диагностические сообщения. Файл журнала, в который разработчики должны пойти, чтобы получить реальную информацию, такую ​​как трассировка стека, не должен быть интернационализирован.