Псевдолокализация
Псевдолокализация (или псевдолокализация ) — это метод тестирования программного обеспечения, используемый для тестирования аспектов интернационализации программного обеспечения. Вместо перевода текста программного обеспечения на иностранный язык, как при локализации , текстовые элементы приложения заменяются измененной версией исходного языка. Например, вместо «Настройки учетной записи» текст может быть изменен на «!!! Àççôûñţ Šéţţîñĝš !!!». [1]
Эти конкретные изменения делают исходные слова читаемыми, но включают в себя наиболее проблемные характеристики языков мира: различную длину текста или символов, направление языка, вписывание в интерфейс и так далее.
Процесс локализации
[ редактировать ]Традиционно локализация программного обеспечения не зависит от процесса разработки программного обеспечения. В типичном сценарии программное обеспечение будет создано и протестировано на одном базовом языке (например, английском), при этом любые локализуемые элементы будут извлечены во внешние ресурсы. Эти ресурсы передаются команде локализации для перевода на разные целевые языки. [2] Проблема с этим подходом заключается в том, что многие незначительные программные ошибки могут быть обнаружены в процессе локализации, когда исправлять их уже слишком поздно (или, что более вероятно, слишком дорого). [2]
Типы проблем, которые могут возникнуть во время локализации, связаны с различиями в том, как письменный текст выглядит на разных языках. Эти проблемы включают в себя:
- Переведенный текст, который значительно длиннее исходного языка и не вписывается в ограничения пользовательского интерфейса или вызывает разрывы текста в неудобных местах.
- Глифы шрифта, которые значительно больше или содержат диакритические знаки, отсутствующие в исходном языке, и которые могут быть обрезаны по вертикали.
- Языки, для которых порядок чтения не является слева направо , что особенно проблематично для пользовательского ввода.
- Код приложения, который предполагает, что все символы соответствуют ограниченному набору символов, например ASCII или ANSI, что может привести к реальным логическим ошибкам, если его не обнаружить.
Кроме того, в процессе локализации могут обнаружиться места, где элемент должен быть локализуемым, но жестко запрограммирован на исходном языке. Аналогичным образом могут существовать элементы, которые были разработаны для локализации, но не должны быть локализованы (например, имена элементов в документе XML или HTML ). [3]
Псевдолокализация предназначена для выявления ошибок такого типа в ходе цикла разработки путем механической замены всех локализуемых элементов псевдоязыком, читаемым носителями исходного языка, но содержащим большинство неприятных элементов других языков и сценариев. Вот почему псевдолокализацию следует рассматривать как инструмент разработки или интернационализации, а не как инструмент локализации.
Псевдолокализация в Microsoft Windows
[ редактировать ]Хотя метод псевдолокализации используется в Microsoft с конца 90-х годов, он стал доступен разработчикам как функция в цикле разработки Windows Vista . [4] Тип псевдоязыка, изобретенный для этой цели, на языке Windows называется псевдоязыком . Эти локали были разработаны для использования наборов символов и характеристик сценариев одного из трех широких классов иностранных языков, используемых Windows в то время: базового («западного»), зеркального («ближневосточного») и CJK («дальневосточного»). Восточный»). [2] До Vista каждый из этих трех языковых классов имел свои собственные сборки Windows с потенциально разными базами кода (и, следовательно, с разным поведением и ошибками). Псевдо-локали, созданные для каждого из этих языковых семейств, создавали текст, который все еще «читается». «как английский, но состоит из шрифтов других языков. Например, текстовая строка
Редактировать настройки программы
будет отображаться в «базовом» псевдолокали как
[!!! εÐiţ Þr0ģYãm səTτıİğ§ !!!]
Этот процесс создает переведенные строки, которые длиннее, включают символы, отличные от ASCII, и (в случае «зеркальной» псевдолокали) пишутся справа налево. [4]
Обратите внимание, что скобки по обе стороны от текста в этом примере помогают выявить следующие проблемы:
- текст, который обрезан (усечение)
- строки, образованные путем объединения (конкатенации)
- строки, которые не являются локализуемыми (жесткое кодирование)
Процесс псевдолокализации в Microsoft
[ редактировать ]Майкл Каплан (менеджер программ Microsoft) описывает процесс псевдолокализации как
нетерпеливый и трудолюбивый, но наивный интерн-локалист, который жаждет проявить себя и который собирается перевести каждую строку, о которой вы не говорите, что не следует переводить. [3]
Одной из ключевых особенностей процесса псевдолокализации является то, что он происходит автоматически, в ходе цикла разработки, как часть рутинной сборки. Этот процесс почти идентичен процессу создания настоящих локализованных сборок, но выполняется до тестирования сборки, то есть гораздо раньше в цикле разработки. Это оставляет время для исправления любых обнаруженных ошибок в базовом коде, что намного проще, чем ошибки, не обнаруженные до приближения даты выпуска. [2]
Сборки, созданные в процессе псевдолокализации, тестируются с использованием того же цикла контроля качества, что и нелокализованная сборка. Поскольку псевдолокали имитируют текст на английском языке, их может протестировать носитель английского языка. Бета-версии Windows (7 и 8) были выпущены с сохранением некоторых псевдолокализованных строк. [5] [6] Для последних версий Windows псевдолокализованная сборка является основной промежуточной сборкой (которая создается регулярно для тестирования), а окончательная сборка на английском языке является ее «локализованной» версией. [3]
Инструменты псевдолокализации для других платформ
[ редактировать ]Помимо инструментов, используемых внутри Microsoft, другие инструменты интернационализации теперь включают параметры псевдолокализации. Эти инструменты включают Alchemy Catalyst от Alchemy Software Development, SDL Passolo от SDL и Globalyst от g11n. Такие инструменты включают возможность псевдолокализации, включая возможность просмотра отображаемых псевдолокализованных диалогов и автоматизацию самого процесса тестирования. Хотя такие инструменты, как Globalyst, завершают весь процесс создания псевдолокализованной сборки и автоматизируют тестирование, это также можно сделать, запустив собственный сценарий псевдолокализации на извлеченных текстовых ресурсах и протестировав его вручную.
В Интернете существует множество бесплатных ресурсов псевдолокализации, которые позволяют создавать псевдолокализованные версии распространенных форматов локализации, таких как строки iOS, Android xml, Gettext po и другие. Эти сайты позволяют разработчикам загружать файлы строк на веб-сайт и загружать полученный псевдолокализованный файл.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Бенджамин Задик (12 апреля 2013 г.). «Псевдолокализация: подготовьте приложение к локализации» . Проверено 13 апреля 2013 г.
- ^ Jump up to: а б с д Раймонд Чен (26 июля 2012 г.). «Краткая и тоже неполная история локализации Windows» . Проверено 26 июля 2012 года .
- ^ Jump up to: а б с Майкл Каплан (11 апреля 2011 г.). «Один из моих коллег — «Псевдочеловек» » . Проверено 26 июля 2012 года .
- ^ Jump up to: а б Шон Стил (27 июня 2006 г.). «Псевдолокали в Windows Vista Beta 2» . Архивировано из оригинала 23 октября 2012 г. Проверено 26 июля 2012 года .
- ^ Стивен Синофски (7 июля 2009 г.). «Разработка Windows 7 для глобального рынка» . Архивировано из оригинала 9 июня 2010 г. Проверено 26 июля 2012 года .
- ^ Крити Джиндал (16 марта 2012 г.). «Установите PowerShell Web Access на компьютерах, отличных от английского» . Архивировано из оригинала 22 апреля 2012 г. Проверено 26 июля 2012 года .