I18n - Данные находятся в одной локали, пользовательский интерфейс - в другой, какую локаль мне использовать для сортировки? - PullRequest
1 голос
/ 09 июля 2009

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

Мой вопрос такой:

Должна ли сортировка и фильтрация данных выполняться с использованием языка пользователя или данных?

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

"Сортировки также могут различаться в зависимости от основного порядка, в котором язык и культура используются для алфавита. Например, в шведском языке есть символ" Ä ", который он сортирует после" Z "в алфавите. Немецкий язык также имеет этот символ, но сортирует его как «ae» после «A» в алфавите. « http://msdn.microsoft.com/en-us/library/a7zyyk0c.aspx

Кто-нибудь должен был принимать это решение раньше? Что вы решили? Мнения?

Кто-нибудь может вспомнить примеры, которые требуют использования локали данных для сортировки или фильтрации?

Заранее спасибо.

Ответы [ 4 ]

2 голосов
/ 09 июля 2009

Я думаю, это будет зависеть от вариантов использования, то есть что помогает пользователям больше всего ?

Если вы американец, работающий со шведскими именами и людьми из Швеции, это действительно поможет вам просмотреть данные, отсортированные по шведским правилам, поскольку именно этого ожидает большинство людей, с которыми вы общаетесь.

1 голос
/ 26 сентября 2009

Очевидный ответ: «что ожидает пользователь» Только то, что не так легко угадать, чего ожидает пользователь: -)

За первый ответ: «американец, работающий со шведскими именами». Можем ли мы быть уверены, что американец знаком со шведскими правилами сортировки? Думаю, нет. Но мы уверены, что он знаком с американскими правилами сортировки. (если я хочу найти номер телефона друга в Швеции, значит ли это, что я знаю, как они там сортируют?)

Некоторые фреймворки / ОС могут помочь. В «Панели управления» (или аналогичной) обычно есть настройки того, какую локаль следует использовать для форматирования или сортировки. Узнайте, что такое API для извлечения этой информации и ее использования.

Обычно пользовательский интерфейс локализован на одном «языке» языка, и его недостаточно для того, чтобы решить, что делать с форматированием, сортировкой и т. Д. некоторые условности разные)

Если вы дадите некоторую информацию о вашей среде, я могу указать вам правильные API.

0 голосов
/ 09 июля 2009

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

0 голосов
/ 09 июля 2009

Если вы сортируете данные просто, чтобы отобразить их на экране в симпатичном списке для пользователя. Сортировка с использованием локали интерфейса.

Если вы сортируете данные для хранения или последовательности, используйте язык данных.

...