支持Unicode并不意味著應(yīng)用是國(guó)際化的
John O'Conner在他的最新Blog中介紹了在使用Unicode[1]進(jìn)行軟件國(guó)際化的過(guò)程中普遍存在的一種誤解,希望大家對(duì)有些啟示。(2008.10.14最后更新)
多年以來(lái),我已經(jīng)幫助了許多組織去國(guó)際化它們的軟件產(chǎn)品。最普遍的誤解之一就是Unicode會(huì)如何幫助它們的產(chǎn)品。有時(shí)候,客戶(hù)會(huì)錯(cuò)誤地相信,支持Unicode對(duì)于國(guó)際化他們的產(chǎn)品是足夠的了。有時(shí),他們相信"支持"Unicode只是一個(gè)單純的是或不是,行或不行的能力問(wèn)題,而不認(rèn)為是在不同的場(chǎng)合和層次中去實(shí)現(xiàn)對(duì)Unicode的支持。
Unicode是一個(gè)字符編碼標(biāo)準(zhǔn)。它是一個(gè)很大的標(biāo)準(zhǔn),有著許多的細(xì)微差別。你的產(chǎn)品可使用許多不同的方法去實(shí)現(xiàn)"Unicode支持"。其結(jié)果就是,那些產(chǎn)品將能以不同,但通常不會(huì)是所有的方式去操縱,處理,存儲(chǔ),甚至可能是展示世界上的文本。你的產(chǎn)品支持Unicode的能力并不是二元(是或不是)的;相反,你要理解到,產(chǎn)品是在各種不同層次上實(shí)現(xiàn)"Unicode支持"的。在多數(shù)簡(jiǎn)單的情況下,你的產(chǎn)品只需正確地存儲(chǔ)并獲取Unicode字符。在一種更復(fù)雜的層次下,你的產(chǎn)品可能要能夠存儲(chǔ),查詢(xún)或展示Unicode字符。再說(shuō)一次,產(chǎn)品"支持"Unicode的能力并不能由一個(gè)單純的是或不是的答案去評(píng)判。一般來(lái)說(shuō),產(chǎn)品會(huì)以某些方式,而不是別的什么方式,去支持Unicode。
哪怕是在最復(fù)雜的層次中實(shí)現(xiàn)了Unicode支持,也不意味著你的產(chǎn)品是國(guó)際化的。國(guó)際化是使一個(gè)軟件代碼庫(kù)易于本地化的過(guò)程。國(guó)際化過(guò)程會(huì)創(chuàng)建一個(gè)產(chǎn)品,該產(chǎn)品沒(méi)有針對(duì)某個(gè)單一文化或語(yǔ)言的特殊偏見(jiàn)。該產(chǎn)品可對(duì)特定文化進(jìn)行本地化。支持Unicode是國(guó)際化工作的一個(gè)關(guān)鍵組成部分,但它也僅僅只是一個(gè)組成部分罷了。與支持Unicode一樣,你的國(guó)際化支持也有著在不同層次上的復(fù)雜度與能力。
概述之,產(chǎn)品可用不同的方式去支持Unicode。支持Unicode通常并不表示你的產(chǎn)品有能力去完成各種可能的針對(duì)Unicode的功能。相反,"支持"常意味著你可以使用Unicode,而不是別的什么東西,去做某些事情。另外,對(duì)Unicode的支持并不是國(guó)際化你的產(chǎn)品的唯一步驟。 Unicode只是其中的一個(gè)步驟,重要的一步罷了。國(guó)際化是創(chuàng)建一個(gè)易于進(jìn)行本地化的產(chǎn)品的過(guò)程,這樣的產(chǎn)品消除了文化偏見(jiàn),以便在對(duì)其進(jìn)行了本地化之后仍能夠很容易地去支持另一種文化或地域。你可將Unicode作為國(guó)際化工作的一個(gè)步驟,但Unicode本身并不能創(chuàng)建一個(gè)國(guó)際化產(chǎn)品。
如果你有問(wèn)題關(guān)于Unicode如何才能幫助你的產(chǎn)品,請(qǐng)聯(lián)系我或留下評(píng)論。如果我能幫忙,就會(huì)回復(fù)。如果我不能,我也知道誰(shuí)能。
譯注
[1]Unicode是一個(gè)字符集標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)為全球書(shū)面和口頭語(yǔ)言,計(jì)算機(jī)平臺(tái),或應(yīng)用程序所使用的每個(gè)字符分配了一個(gè)獨(dú)一無(wú)二的數(shù)值。Unicode包含了其它有限字符集所使用的全部字符。在Unicode之前,小字符集彼此之間分配的字符數(shù)值是不同的。Unicode統(tǒng)一了所有的其它字符集;每個(gè)字符擁有它自己的,唯一的數(shù)值。
P.S. 這段Unicode的簡(jiǎn)介也出自于Conner的一篇Blog--What is Unicode。