首頁>Club>
41
回覆列表
  • 1 # Tiekt鐵鐵

    人們常把I18N作為“國際化”的簡稱,其來源是英文單詞 internationalization的首末字元i和n。18為中間的字元數。   隨著全球經濟的一體化,軟體開發者應該開發出支援多國語言、國際化的Web應用。對於Web應用來說,同樣的頁面在不同的語言環境下需要顯示不同的效果。也就是說,一個Web應用程式在執行時能夠根據客戶端請求所來自的國家和語言顯示不同的使用者介面。這樣 ,當需要在應用程式中新增對一種新的語言的支援時,無需修改應用程式的程式碼。   在Struts框架中進行應用程式的國際化,支援重點在於應用程式的文字和影象表示,最主要的工作就是準備Resource Bundle資源包。事實上,準備資源包的過程,就是把對應不同語言的使用者所涉及的文字和圖片儲存在多個文字檔案中,客戶端根據不同的環境需要進行更換。這些檔案被稱為“屬性檔案”,所有屬性檔案合在一起被稱為資源包(Resource Bundle)。   在資訊領域,國際化與本地化(英文:Internationalization and localization,或拼成Internationalisation and localisation)是指調整軟體,使之能適用於不同的語言及地區。   國際化是指在設計軟體時,將軟體與特定語言及地區脫鉤的過程。當軟體被移植到不同的語言地區時,軟體本身不用做內部工程上的改變或修正。本地化則是指當移植軟體時,加上與特定區域設定有關的資訊和翻譯檔案的過程。 國際化和本地化之間的區別雖然微妙,但卻很重要。國際化意味著產品有適用於任何地方的潛力;本地化則是為了更適合於特定地方的使用,而另外增添的特色。用一項產品來說,國際化只需做一次,但本地化則要針對不同的區域各做一次。 這兩者之間是互補的,並且兩者結合起來才能讓一個系統適用於各地。   基於他們的英文單字長度過長,常被分別簡稱成i18n(18意味著在國際化這個單字中,i 和 n 之間有 18 個字母)及L10n。使用大寫的 L 以利區分 i18n 中的 i 。   在如微軟及IBM等企業中,則會使用全球化(globalization)來表示此兩者的合稱。 [1] [2] 在英文中,也會使用 g11n做為簡稱。   範圍   國際化與本地化工作的焦點包括:   語言   電子檔案   字母。目前大部分的系統都採用統一碼為標準來解決字元編碼。   不同的數字命名系統。   書寫方向。譬如德語是從左到右,而波斯語、希伯來語和阿拉伯語是由右到左。   相同語言在不同地區的拼法差異,如美國英語、加拿大英語使用localization,而英國英語和澳洲英語使用localisation。   檔案處理上的差異,如某些文字存在大小寫,其它則否。字母順序。   文字的影象表示(列印物、內含線上圖片)。   讀法(音訊)   影片的字幕   文化   圖片和顏色:這牽涉到理解和文化適宜的議題。   名字和稱謂   政府給定的編碼(如美國的社會安全碼,英國的National Insurance number,愛沙尼亞的Isikukood及其它各國的身份證號碼)和護照   電話號碼、地址和國際郵遞區號   貨幣 (符號、貨幣標誌的位置)   度量衡   紙張大小   書寫習慣   日期跟時間的格式,包含各式日曆。   時區(在國際場合會使用世界標準時間)   數字格式(小數點、分隔點的位置、分隔所用的字元)   產品和服務所要面向的法規   只屬於本地化的主題有:   翻譯   針對特定語言(如東亞語言)的特別支援   符合當地習慣   符合當地的道德觀念   針對當地撰寫內容   符號   排序方法   美學   當地的文化價值和社會環境   困難   開發軟體時,國際化和本地化對開發者是一個有挑戰性的任務,特別是當軟體當初設計時沒有考慮這個問題時。通常作法是將文字和其他環境相關的資源與程式程式碼相分離。這樣在理想的情況下,應對變化的環境時無需修改程式碼,只要修改資源,從而顯著簡化了工作。   開發團隊需要了解其他語言和文化,而這樣的人才可能難以尋覓。而且資源的複製也可能成為維護的惡夢。例如,如果某個語言中顯示給使用者的資訊變化了,其他的翻譯版本都要隨之變化。Gettext之類軟體庫有助於解決這一問題。   由於自由軟體自由地修改和再分發,因此它比較容易國際化。當KDE擁有70個語言版本時,大多數專有軟體只能夠用於商業上有利可圖的語言。   區域設定 (locale)   主條目:區域設定   計算機中一套定義使用者的語言、國家和用於定義使用者希望在其使用者介面上看到的各種可以改變的選擇的引數集合。通常一個locale識別符號至少包括一個語言識別符號和一個區域識別符號。   在UNIX和WINDOWS中,locale的控制是不同的。在UNIX下,通常透過環境變數來控制locale。這些環境變數包括:LC_ALL, LC_CTYPE, LC_TIME, 等等。你可以透過改變這些環境變數來控制你的程式或者命令所表現出來的locale,前提是這些程式或者命令必須是已經被國際化的和本地化的。在Windows下,你可以透過改變控制面板上的“語言/區域”中的區域的值來設定Windows的當前使用者的locale。   與全球化的關係   國際化有時與 全球化 交替使用以描述聯絡日益緊密的世界的經濟與文化影響。   國際化經常(特別是在軟體中)指提供一個用於多語言的框架,有時也指事物(機構、理念)可以藉此影響多個民族的過程。 此時很少使用全球化,因為它一般指機構和產品出現與世界各地(同時也引起了對本地化的需求)。   本地化可能用於描述貼近終端使用者以減小全球化的環境和其他副作用。   參見   中日韓統一表意文字   全球化   雙向文稿支援   多語言文字排版引擎:   Uniscribe (Windows)   Apple Type Services for Unicode Imaging (New Macintosh)   WorldScript (Old Macintosh)   Pango (Open source)   Graphite (Windows & Linux, open source)

  • 中秋節和大豐收的關聯?
  • 螺旋箍筋怎麼計算,計算公式是什麼?