52、Java 国际化与参数传递机制详解

Java 国际化与参数传递机制详解

1. 国际化概述

在当今全球化的软件市场中,大量软件产品需要部署到世界各地。仅仅开发支持母语的应用程序已远远不够,像魁北克这样的地区就要求所有软件必须支持两种或更多语言。软件在全球市场的成功,很大程度上取决于能否以多种语言在多个国家销售。

  • 国际化(Internationalization) :开发支持不同语言和文化的软件的过程,简称为 i18n。
  • 本地化(Localization) :为特定地区准备软件的过程。地区(Locale)可以由地理、文化或政治因素来定义。

对现有的大型应用程序进行改造以支持多语言可能成本高昂,因此在开发初期就考虑国际化是个不错的选择。遵循“无重复”原则有助于设计出能快速过渡到国际化的软件架构,同时构建国际化基础也能让后续工作更轻松,因为这些基础工作有助于消除代码重复。

2. 资源束(Resource Bundles)

直接将字符串字面量嵌入代码会带来诸多问题,主要是会造成代码重复。如果一个字面量出现在生产代码中,并且进行了全面测试,那么测试代码中很可能会重复这个字面量,而且字面量的含义也不总是清晰的。在敏捷 Java 开发中,通常会将字符串字面量提取为类常量,这样测试代码和生产代码都可以引用同一个常量,常量名能赋予其明确的含义。但维护大量类常量也是一件麻烦事。对于国际化应用来说,理想的解决方案是将所有字面量提取到一个公共文件中。当需要将软件部署到不同地区时,只需提供一个包含翻译文本的新文件即可。

Java 中的 ja

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值