作者:昱达公司负责人 崔启亮博士
由于软件国际化是新兴的软件生产方式,很多软件国际化方法和流程都还在发展阶段,而且软件新技术不断涌现,不仅在我国软件企业内部,即使在欧美等软件较发达的欧美国家,对于软件国际化都还存在一些错误的认识,这些错误认识将对软件国际化产生消极的影响。
软件国际化是软件编码完成后的附加阶段
不要错误地认为软件国际化可以在产品的功能和代码基本完成后进行的一个附加阶段。实际上,软件国际化是国际化软件框架设计和编码的方法论,不是软件的附加功能,完整地国际化应该是从软件需求分析开始的,而且贯穿于软件项目实施的全过程。
如果在软件的后期才开始考虑国际化的要求,则将推迟国际化软件的发布时间,增加国际化的难度,因为如果源程序如果没有按照国际化设计,则后期的代码修改,甚至整个软件框架都需要推倒重来,则显著提高成本,而且降低软件的质量。
使用Java编码支持Unicode能保证软件已经国际化
虽然使用Java编程语言开发软件,可以方便地实现软件的国际化,但是,Java编程不能保证软件可以自动实现国际化。实际上,可以很容易使用Java编写出没有国际化的代码。因此,在使用Java开发软件时,仍然需要仔细遵守国际化的编码规则。
Unicode字符集编码可以支持世界上各种主要文字,如果软件支持Unicode编码,则可以使软件国际化变得更容易。但是在软件代码设计中,Unicode不会自动更改不同区域、不同语言的数据格式,所以,采用Unicode编码时,需要时刻按照软件国际化的要求进行开发。
软件国际化就是使可本地化的资源文件与代码分离
软件代码与可以本地化的资源文件(菜单、对话框和屏幕提示等)分离是软件国际化设计常用的方法,可以提高本地化的效率和质量,降低本地化的复杂程度。
但是仅仅把资源文件与代码分离,对于国际化软件而言是不够的,软件国际化和本地化不是仅仅本地化软件用户界面,还要支持不同区域的数据格式(日期、时间、货币、数字、度量衡等)。另外对于阿拉伯语和希伯来语等双向语言,需要使用软件镜像技术完成本地化。
不准备本地化的软件不需要国际化设计
如果软件近期不准备本地化,但是公开发售,那么这样的软件就不需要国际化吗?答案是否定的。即使软件只在国内销售,但是由于现代全球交流频繁,国内也会有很多不熟悉本国语言的国外用户,他们对本地化和国际化的需求是不能忽视的。而如果在全球销售则,则必须支持不同区域的数据格式。
退一步说,即使软件近期不进行本地化,那么不能保证将来不需要本地化。如果将来要进行本地化,而原来的设计没有考虑本地化的要求,没有按照国际化设计,则花费的人力和财力将大大增加。所以,软件是否需要本地化是公司高层的商业决策,不是软件开发的技术问题。为了获得更多的国外市场份额,即使不进行本地化,也需要按照国际化软件设计。
*本网站发布的昱达公司的文章版权归昱达公司和作者所有,未经书面许可,请勿转载。* |