Files
build-web-application-with-…/zh-tw/10.0.md
2019-02-26 01:40:54 +08:00

1.9 KiB
Raw Blame History

10 國際化和本地化

為了適應經濟的全球一體化作為開發者我們需要開發出支援多國語言、國際化的Web應用即同樣的頁面在不同的語言環境下需要顯示不同的效果也就是說應用程式在執行時能夠根據請求所來自的地域與語言的不同而顯示不同的使用者介面。這樣當需要在應用程式中新增對新的語言的支援時無需修改應用程式的程式碼只需要增加語言套件即可實現。

國際化與本地化Internationalization and localization,通常用i18n和L10N表示國際化是將針對某個地區設計的程式進行重構以使它能夠在更多地區使用本地化是指在一個針對國際化的程式中增加對新地區的支援。

目前Go語言的標準套件沒有提供對i18n的支援但有一些比較簡單的第三方實現這一章我們將實現一個go-i18n函式庫用來支援Go語言的i18n。

所謂的國際化就是根據特定的locale資訊提取與之相應的字串或其它一些東西比如時間和貨幣的格式等等。這涉及到三個問題

1、如何確定locale。

2、如何儲存與locale相關的字串或其它資訊。

3、如何根據locale提取字串和其它相應的資訊。

在第一小節裡我們將介紹如何設定正確的locale以便讓訪問站點的使用者能夠獲得與其語言相應的頁面。第二小節將介紹如何處理或儲存字串、貨幣、時間日期等與locale相關的資訊第三小節將介紹如何實現國際化站點即如何根據不同locale返回不同合適的內容。透過這三個小節的學習我們將獲得一個完整的i18n方案。

目錄