Каковы преимущества и недостатки использования gettext по сравнению с отдельной динамической библиотекой для каждой локали?

У меня была дискуссия с другим пользователем SO о GNU gettext и его ограничениях среди прочего. Он утверждал, что gettext «недостаточен» и не подходит для идиоматического вывода на других языках, и правильный способ сделать это - «написать отдельную DLL / класс для каждой локали». Я подумал, что это заслуживает отдельного вопроса, так каковы преимущества и недостатки использования gettext по сравнению с отдельной динамической библиотекой для каждой локали?


person vitaut    schedule 03.01.2013    source источник


Ответы (1)


Честно говоря, я не понимаю, что будет делать отдельная динамическая библиотека?

Проблема с локализацией обычно связана не с gettext, а с реализацией и переводом.

Например. если у вас есть такой текст: "У меня есть " + i + " автомобили", то хороший перевод будет затруднен.
Но это не проблема gettext.

person Remy    schedule 03.01.2013
comment
Отвечая на ваш вопрос о динамической библиотеке, насколько я понял, нужно создать вариант исходного кода для каждого языка/локали с переведенными строками и т. д. и скомпилировать его в отдельные динамические библиотеки, выбранные в зависимости от текущей локали. Лично я рассматриваю это как бремя обслуживания и не вижу никаких преимуществ. - person vitaut; 03.01.2013
comment
Это звучит как кошмар, если вы спросите меня. Я работаю в бюро переводов и за 6 лет работы такого не видел. - person Remy; 03.01.2013
comment
Я работаю в агентстве. Мы разрабатываем инструменты только для собственных нужд, и они работают с .NET. Но по опыту gettext довольно мощный. Также поддерживает несколько форм множественного числа. - person Remy; 03.01.2013