Псевдолокалізація — один із методів тестування програмного забезпечення, який використовується для тестування аспектів інтернаціоналізації. Замість перекладу тексту програмного забезпечення іноземною мовою, який здійснюється у процесі локалізації, текстові елементи програми замінюються зміненою версією мови оригіналу.
Приклад:
Account Settings | [!!! Àççôûñţ Šéţţîñĝš !!!] |
У результаті таких специфічних змін оригінальні слова залишаються читабельними, але водночас виникають особливості, які спричиняють найбільшу кількість проблем під час фактичної локалізації іншими мовами: змінюються символи алфавіту, довжина рядків, напрямок тексту, деякі рядки не вміщаються у відведене їм місце тощо.
Процес локалізації
Зазвичай, локалізація програмного забезпечення здійснюється незалежно від процесу розробки програмного забезпечення. За типовим сценарієм ПЗ будується й тестується на одній базовій мові (наприклад, англійській), при цьому будь-які елементи, які потребують локалізації, витягають у зовнішні ресурси і передають команді з локалізації для перекладу різними цільовими мовами. Проблема такого підходу полягає в тому, що під час процесу локалізації часто виявляється багато неочевидних програмних помилок, на виправлення яких не вистачає часу або це просто надто дорого.
Проблеми, які виникають під час локалізації, зазвичай зумовлені різницею в тому, як написаний текст виглядає різними мовами. Серед них є такі:
- Текст мови перекладу значно довший, ніж вихідною мовою, і тому він не відповідає обмеженням інтерфейсу користувача або розбивається на частини там, де не має бути розривів.
- Шрифт алфавіту мови перекладу містить діакритичні знаки, яких немає у вихідній мові, або великі за розміром гліфи, і через це рядки перекладу можуть обрізуватися по вертикалі.
- Мови, у яких відрізняється напрямок читання: це становить особливу проблему, якщо передбачається, що користувач вводитиме текст у програму.
- Код програми передбачає наявність обмеженого набору символів, наприклад ASCII або ANSI. Якщо ігнорувати цю проблему, вона здатна спричинити логічні помилки.
Крім того, у процесі локалізації іноді виявляються елементи, які потребують локалізації, але жорстко закодовані вихідною мовою і не допускають внесення змін. І навпаки: виявляються елементи, для яких передбачається локалізація, але насправді вона не потрібна (наприклад, назви елементів в XML- або HTML-документі).
Псевдолокалізація призначена для виявлення помилок таких типів під час циклу розробки шляхом механічної заміни всіх елементів, для яких передбачається локалізація, символами псевдомови. Ці символи залишаються зрозумілими носіям вихідної мови, водночас даючи змогу виявити більшість проблемних місць. Ось чому псевдолокалізацію слід розглядати радше як інструмент інженерії або інтернаціоналізації, ніж локалізації.
Псевдолокалізація в Microsoft Windows
Хоча техніка псевдолокалізації застосовується в Microsoft з кінця 90-х років, доступною розробникам вона стала лише під час циклу розробки Windows Vista. Винайдена з цією метою псевдомова дістала назву псевдолокаль Windows. Такі локалі було розроблено для дослідження особливостей наборів символів та сценаріїв. Іноземні мови, які використовувались у той час у Windows, розбили на три великих класи: базовий («західний»), дзеркальний («близькосхідний») та CJK («далекосхідний»). До часів Vista для кожного з цих трьох мовних класів створювали окремі збірки Windows із потенційно різними кодовими базами (а отже, різною поведінкою й помилками).
У псевдолокалях, створених для кожної з цих мовних сімей, використовувався текст, який візуально читався як англійська, але складався з елементів інших мов. Наприклад, текстовий рядок
Edit program settings
відображався в «базовій» псевдолокалі як
[!!! εÐiţ Þr0ģЯãm səTτıИğ§ !!!]
Тобто у псевдолокалі застосовувалися «перекладені» рядки, які мали більшу довжину і містили символи, які не належать до ASCII і записувалися справа наліво (у випадку «дзеркальної» псевдолокалі).
Зверніть увагу, що квадратні дужки з обох сторін тексту в цьому прикладі допомагають виявити такі проблеми:
- обрізаний текст (усікання)
- рядки, які утворюються шляхом комбінування (зчеплювання)
- рядки, які неможливо локалізувати (жорстке кодування)
Процес псевдолокалізації в компанії Microsoft
Майкл Каплан (Michael Kaplan), менеджер програми Microsoft, описав, на що схожий процес псевдолокалізації: енергійний і працьовитий, але водночас наївний внутрішній спеціаліст із локалізації, який прагне випробувати сам себе і намагається перекласти будь-який рядок, який теоретично можна перекласти. Однією з ключових особливостей процесу псевдолокалізації є те, що він відбувається автоматично, під час циклу розробки, як частина рутинної роботи над білдом. Процес майже ідентичний до того, який використовується для створення справжніх локалізованих білдів, але виконується набагато раніше в циклі розробки — перед тестуванням білду. Це дає час для виявлення будь-яких помилок, які залишаються невиправленими в базовому коді. Такий підхід набагато простіше, ніж виявлення помилок невдовзі перед датою релізу.
Білди, створені в процесі псевдолокалізації, перевіряються за допомогою того самого циклу контролю якості (QA), що й нелокалізований білд. Оскільки псевдолокалі імітують англійський текст, перевірити їх може й англомовний користувач.
Бета-версії Windows (7 і 8) було навіть випущено з деякими псевдолокалізованими рядками. Для цих останніх версій Windows псевдолокалізований білд є основним тестовим білдом (тим, що регулярно створюється для тестування), а остаточний білд англійською мовою є його «локалізованою» версією.
Інструменти псевдолокалізації для інших платформ
Окрім внутрішніх інструментів, що використовуються корпорацією Майкрософт, тепер опції псевдолокалізації передбачено й в інших засобах інтернаціоналізації — від Alchemy Software Development, від SDL та Globalyst від g11n. Такі інструменти передбачають можливість псевдолокалізації, зокрема перегляд відтворених псевдолокалізованих діалогів, та автоматизацію власне процесу тестування. Вони завершують весь процес створення псевдолокалізованого білду та автоматизують тестування. Інший спосіб здійснити його — створення спеціального скрипта псевдолокалізації на витягнутих текстових ресурсах і ручне їх тестування.
В Інтернеті існує безліч безкоштовних ресурсів для псевдолокалізації, які дають змогу створювати псевдолокалізовані версії загальних форматів локалізації, як-от рядки iOS, Android XML, Gettext PO та інші. Зазвичай розробникам вивантажують файл рядків на один із таких сайтів, а потім отримують псевдолокалізований файл для тестування.
Див. також
Примітки
- Benjamin Zadik (12 квітня 2013). Pseudolocalization: Prepare your app for localization. Процитовано 13 квітня 2013.
- Raymond Chen (26 липня 2012). A brief and also incomplete history of Windows localization. Процитовано 26 липня 2012.
- Michael Kaplan (11 квітня 2011). One of my colleagues is the "Pseudo Man". Процитовано 26 липня 2012.
- Shawn Steele (27 червня 2006). Pseudo Locales in Windows Vista Beta 2. Процитовано 26 липня 2012.
- Steven Sinofsky (7 липня 2009). Engineering Windows 7 for a Global Market. Процитовано 26 липня 2012.
- Kriti Jindal (16 березня 2012). Install PowerShell Web Access on non-English machines. Процитовано 26 липня 2012.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Psevdolokalizaciya odin iz metodiv testuvannya programnogo zabezpechennya yakij vikoristovuyetsya dlya testuvannya aspektiv internacionalizaciyi Zamist perekladu tekstu programnogo zabezpechennya inozemnoyu movoyu yakij zdijsnyuyetsya u procesi lokalizaciyi tekstovi elementi programi zaminyuyutsya zminenoyu versiyeyu movi originalu Priklad Account Settings Accounţ Seţţinĝs U rezultati takih specifichnih zmin originalni slova zalishayutsya chitabelnimi ale vodnochas vinikayut osoblivosti yaki sprichinyayut najbilshu kilkist problem pid chas faktichnoyi lokalizaciyi inshimi movami zminyuyutsya simvoli alfavitu dovzhina ryadkiv napryamok tekstu deyaki ryadki ne vmishayutsya u vidvedene yim misce tosho Proces lokalizaciyiZazvichaj lokalizaciya programnogo zabezpechennya zdijsnyuyetsya nezalezhno vid procesu rozrobki programnogo zabezpechennya Za tipovim scenariyem PZ buduyetsya j testuyetsya na odnij bazovij movi napriklad anglijskij pri comu bud yaki elementi yaki potrebuyut lokalizaciyi vityagayut u zovnishni resursi i peredayut komandi z lokalizaciyi dlya perekladu riznimi cilovimi movami Problema takogo pidhodu polyagaye v tomu sho pid chas procesu lokalizaciyi chasto viyavlyayetsya bagato neochevidnih programnih pomilok na vipravlennya yakih ne vistachaye chasu abo ce prosto nadto dorogo Problemi yaki vinikayut pid chas lokalizaciyi zazvichaj zumovleni rizniceyu v tomu yak napisanij tekst viglyadaye riznimi movami Sered nih ye taki Tekst movi perekladu znachno dovshij nizh vihidnoyu movoyu i tomu vin ne vidpovidaye obmezhennyam interfejsu koristuvacha abo rozbivayetsya na chastini tam de ne maye buti rozriviv Shrift alfavitu movi perekladu mistit diakritichni znaki yakih nemaye u vihidnij movi abo veliki za rozmirom glifi i cherez ce ryadki perekladu mozhut obrizuvatisya po vertikali Movi u yakih vidriznyayetsya napryamok chitannya ce stanovit osoblivu problemu yaksho peredbachayetsya sho koristuvach vvoditime tekst u programu Kod programi peredbachaye nayavnist obmezhenogo naboru simvoliv napriklad ASCII abo ANSI Yaksho ignoruvati cyu problemu vona zdatna sprichiniti logichni pomilki Krim togo u procesi lokalizaciyi inodi viyavlyayutsya elementi yaki potrebuyut lokalizaciyi ale zhorstko zakodovani vihidnoyu movoyu i ne dopuskayut vnesennya zmin I navpaki viyavlyayutsya elementi dlya yakih peredbachayetsya lokalizaciya ale naspravdi vona ne potribna napriklad nazvi elementiv v XML abo HTML dokumenti Psevdolokalizaciya priznachena dlya viyavlennya pomilok takih tipiv pid chas ciklu rozrobki shlyahom mehanichnoyi zamini vsih elementiv dlya yakih peredbachayetsya lokalizaciya simvolami psevdomovi Ci simvoli zalishayutsya zrozumilimi nosiyam vihidnoyi movi vodnochas dayuchi zmogu viyaviti bilshist problemnih misc Os chomu psevdolokalizaciyu slid rozglyadati radshe yak instrument inzheneriyi abo internacionalizaciyi nizh lokalizaciyi Psevdolokalizaciya v Microsoft WindowsHocha tehnika psevdolokalizaciyi zastosovuyetsya v Microsoft z kincya 90 h rokiv dostupnoyu rozrobnikam vona stala lishe pid chas ciklu rozrobki Windows Vista Vinajdena z ciyeyu metoyu psevdomova distala nazvu psevdolokal Windows Taki lokali bulo rozrobleno dlya doslidzhennya osoblivostej naboriv simvoliv ta scenariyiv Inozemni movi yaki vikoristovuvalis u toj chas u Windows rozbili na tri velikih klasi bazovij zahidnij dzerkalnij blizkoshidnij ta CJK dalekoshidnij Do chasiv Vista dlya kozhnogo z cih troh movnih klasiv stvoryuvali okremi zbirki Windows iz potencijno riznimi kodovimi bazami a otzhe riznoyu povedinkoyu j pomilkami U psevdolokalyah stvorenih dlya kozhnoyi z cih movnih simej vikoristovuvavsya tekst yakij vizualno chitavsya yak anglijska ale skladavsya z elementiv inshih mov Napriklad tekstovij ryadok Edit program settings vidobrazhavsya v bazovij psevdolokali yak eDiţ THr0gYaam seTtiIg Tobto u psevdolokali zastosovuvalisya perekladeni ryadki yaki mali bilshu dovzhinu i mistili simvoli yaki ne nalezhat do ASCII i zapisuvalisya sprava nalivo u vipadku dzerkalnoyi psevdolokali Zvernit uvagu sho kvadratni duzhki z oboh storin tekstu v comu prikladi dopomagayut viyaviti taki problemi obrizanij tekst usikannya ryadki yaki utvoryuyutsya shlyahom kombinuvannya zcheplyuvannya ryadki yaki nemozhlivo lokalizuvati zhorstke koduvannya Proces psevdolokalizaciyi v kompaniyi MicrosoftMajkl Kaplan Michael Kaplan menedzher programi Microsoft opisav na sho shozhij proces psevdolokalizaciyi energijnij i pracovitij ale vodnochas nayivnij vnutrishnij specialist iz lokalizaciyi yakij pragne viprobuvati sam sebe i namagayetsya pereklasti bud yakij ryadok yakij teoretichno mozhna pereklasti Odniyeyu z klyuchovih osoblivostej procesu psevdolokalizaciyi ye te sho vin vidbuvayetsya avtomatichno pid chas ciklu rozrobki yak chastina rutinnoyi roboti nad bildom Proces majzhe identichnij do togo yakij vikoristovuyetsya dlya stvorennya spravzhnih lokalizovanih bildiv ale vikonuyetsya nabagato ranishe v cikli rozrobki pered testuvannyam bildu Ce daye chas dlya viyavlennya bud yakih pomilok yaki zalishayutsya nevipravlenimi v bazovomu kodi Takij pidhid nabagato prostishe nizh viyavlennya pomilok nevdovzi pered datoyu relizu Bildi stvoreni v procesi psevdolokalizaciyi pereviryayutsya za dopomogoyu togo samogo ciklu kontrolyu yakosti QA sho j nelokalizovanij bild Oskilki psevdolokali imituyut anglijskij tekst pereviriti yih mozhe j anglomovnij koristuvach Beta versiyi Windows 7 i 8 bulo navit vipusheno z deyakimi psevdolokalizovanimi ryadkami Dlya cih ostannih versij Windows psevdolokalizovanij bild ye osnovnim testovim bildom tim sho regulyarno stvoryuyetsya dlya testuvannya a ostatochnij bild anglijskoyu movoyu ye jogo lokalizovanoyu versiyeyu Instrumenti psevdolokalizaciyi dlya inshih platformOkrim vnutrishnih instrumentiv sho vikoristovuyutsya korporaciyeyu Majkrosoft teper opciyi psevdolokalizaciyi peredbacheno j v inshih zasobah internacionalizaciyi vid Alchemy Software Development vid SDL ta Globalyst vid g11n Taki instrumenti peredbachayut mozhlivist psevdolokalizaciyi zokrema pereglyad vidtvorenih psevdolokalizovanih dialogiv ta avtomatizaciyu vlasne procesu testuvannya Voni zavershuyut ves proces stvorennya psevdolokalizovanogo bildu ta avtomatizuyut testuvannya Inshij sposib zdijsniti jogo stvorennya specialnogo skripta psevdolokalizaciyi na vityagnutih tekstovih resursah i ruchne yih testuvannya V Interneti isnuye bezlich bezkoshtovnih resursiv dlya psevdolokalizaciyi yaki dayut zmogu stvoryuvati psevdolokalizovani versiyi zagalnih formativ lokalizaciyi yak ot ryadki iOS Android XML Gettext PO ta inshi Zazvichaj rozrobnikam vivantazhuyut fajl ryadkiv na odin iz takih sajtiv a potim otrimuyut psevdolokalizovanij fajl dlya testuvannya Div takozhNechitke testuvannyaPrimitkiBenjamin Zadik 12 kvitnya 2013 Pseudolocalization Prepare your app for localization Procitovano 13 kvitnya 2013 Raymond Chen 26 lipnya 2012 A brief and also incomplete history of Windows localization Procitovano 26 lipnya 2012 Michael Kaplan 11 kvitnya 2011 One of my colleagues is the Pseudo Man Procitovano 26 lipnya 2012 Shawn Steele 27 chervnya 2006 Pseudo Locales in Windows Vista Beta 2 Procitovano 26 lipnya 2012 Steven Sinofsky 7 lipnya 2009 Engineering Windows 7 for a Global Market Procitovano 26 lipnya 2012 Kriti Jindal 16 bereznya 2012 Install PowerShell Web Access on non English machines Procitovano 26 lipnya 2012