企業(yè)級(jí)協(xié)作平臺(tái)Box開(kāi)源了一個(gè)工具,通過(guò)將語(yǔ)言翻譯集成到持續(xù)集成過(guò)程中,來(lái)解決本地化過(guò)程中遇到的挑戰(zhàn)。
這個(gè)被稱為Mojito的工具,由命令行工具和網(wǎng)頁(yè)接口組成。命令行接口負(fù)責(zé)從源碼中抽取待翻譯的字符串,并根據(jù)當(dāng)前Mojito倉(cāng)庫(kù)的狀態(tài)生成本地化資源文件。網(wǎng)頁(yè)接口使用倉(cāng)庫(kù)為譯者提供一個(gè)簡(jiǎn)單方式來(lái)跟上軟件需求的變化。
該產(chǎn)品支持xliff文件和Android、iOS、Java和Windows資源文件。它構(gòu)建于MySQL數(shù)據(jù)庫(kù),有一個(gè)Java語(yǔ)言開(kāi)發(fā)的后端和JavaScript語(yǔ)言開(kāi)發(fā)的前端。
在一次InfoQ的采訪中,Box本地化產(chǎn)品助理產(chǎn)品經(jīng)理Hanna Kanabiajeuskaja和高級(jí)軟件工程師Jenni Yi提到,他們?cè)谏鐓^(qū)關(guān)注下創(chuàng)建了Mojito:
和許多公司遇到的問(wèn)題類似,我們也一直在自省:如何進(jìn)行持續(xù)本地化而不影響應(yīng)用程序的完整性和開(kāi)發(fā)步驟?這個(gè)問(wèn)題的解決方案是創(chuàng)建一個(gè)持續(xù)本地化平臺(tái)。在Box,有一個(gè)全球化團(tuán)隊(duì),在本地化社區(qū)中非常活躍。我們從其他團(tuán)隊(duì)學(xué)到了很多,同時(shí)也希望能盡可能的貢獻(xiàn)社區(qū)。自從開(kāi)始設(shè)計(jì)Mojito,我們知道它能夠適應(yīng)許多外面公司的需求,因此決定以開(kāi)源的方式構(gòu)建。由于設(shè)計(jì)上考慮了開(kāi)源而不僅是為了解決當(dāng)時(shí)遇到的特定場(chǎng)景問(wèn)題,我們以整體方式看待持續(xù)本地化問(wèn)題。這幫助我們構(gòu)建了一個(gè)干凈、輕量級(jí)和可擴(kuò)展的產(chǎn)品。
對(duì)于那些軟件遍布全球的公司,本地化的挑戰(zhàn)是共通的:持續(xù)跟蹤一切是一項(xiàng)復(fù)雜的任務(wù)。
目前還不明確Box對(duì)Mojito后續(xù)功能的承諾,不過(guò)Kanabiajeuskaja和Yi認(rèn)為Mojito可以從增強(qiáng)功能中受益,例如翻譯歷史和版本控制。不過(guò)目前,他們依靠社區(qū)來(lái)打造這樣的產(chǎn)品:“我們目前沒(méi)有計(jì)劃在最近完成這些特性。但是,我們鼓勵(lì)開(kāi)源社區(qū)能夠貢獻(xiàn)這幾個(gè)和其他特性。”
Box不是類似產(chǎn)品中的唯一一個(gè)。去年,Evernote開(kāi)源了Serge,它們的持續(xù)本地化系統(tǒng);其他還有類似CrowdIn和Transifex等的付費(fèi)服務(wù)。
Box會(huì)在9月8日的BoxDev活動(dòng)和未來(lái)幾個(gè)月的其他活動(dòng)上展示Mojito的更多細(xì)節(jié)。
查看英文原文:Box Open-Sources Continuous Localization Platform Mojito