- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件系统国际化的设计研究 1 前言 随着一些应用软件的国际化,不同国家的用户对软件的操作界面提出了多语种化的需求。如果软件具有多语种支持能力,则不必为每个语种开发其相应版本,从而降低开发成本,提高软件的使用灵活性。 如何在一套软件系统中解决语言环境不同带来的一系列问题,就要求在软件系统设计时是面向多种语言的,因此,软件编程阶段时就不得不设法解决软件的国际化。 所谓的“国际化”是指把原来为英文设计的计算机系统或应用软件改写为同时支持多种语言和文化习俗的过程。在软件创作的初期,一般的编程语言编译、开发都是只支持英文的,为了适应更广的语言和文化习俗,软件有必要在设计结构和机制上支持多语言的扩展特性,这一过程称为国际化。 一个国际化的软件系统通常具有以下特征:有一个附加的本地化数据及拥有在全世界各个地区执行的能力;文本的元素,比如状态信息或GUI截面的标签,不是直接写在程序中,而是被存储在本地化的数据中,并且能被程序正确的动态的使用;支持新的语言时,不需要修改程序,不需要重新编译;对于文化差异的数据,比如日期和货币,必须根据用户的语言和习惯显示不同的格式;可以被迅速本地化。 2 系统分析 一套软件系统的正常运行,离不开软件本身和操作系统的支撑。现在流行的操作系统有多种语言版本,而且,中文版操作系统已经完全支持中英文的录入和显示,在此无须考虑操作系统的语言支持问题。对软件使用者而言,软件系统操作语言障碍是影响软件使用效率的最大问题。因此,在多语种软件系统设计时,必须提供多语种版本的选择或切换功能。 目前软件界面多语切换主要有两种方法,即使用配置文件和第三方多语种控件。使用配置文件时,多种语种数据存放在用户可见的文本文件中,因而容易造成数据的丢失或损坏。而使用第三方多语种控件时,如果输入大量的多语种数据,这些数据都编译到可执行文件中,导致系统载入速度变慢,性能降低,另外如需修改某些翻译值,则必须重新编译,从而给使用带来不便。本文使用的动态数据库载入方式配合面向对象编程的继承思想,可以避免上述缺陷。在数据库中可以录入大量的多语种数据,减少可执行文件大小,系统启动快;当系统损坏或重做系统后,可以使用数据库恢复机制,恢复系统数据,且不影响其他数据的使用。 作者归纳出与该系统实现有关的两个主要方面: 系统界面主要包括:标题栏、菜单、工具栏、状态栏、MDI子窗体的label标识、按钮标签、快捷键提示等; 人机交互信息主要包括:人机交互的提示信息、帮助信息、出错信息等。 3 系统实现 根据以上分析结果,结合系统开发工具和数据库所提供的功能,笔者提出实现多语种软件系统的一种通用方法:将系统界面信息和交互信息归类合并,动态地从数据库表中提取系统界面和人机交互信息所需的显示内容,并通过改变系统全局变量来提供中英文实时切换功能。 传统的软件开发方法都是把界面中的各种栏位标识在程序设计阶段设定好,这种方法在单一的语言环境下可行,但在多语种集成环境下,界面的语言显示方式由用户选择,因此,必须选择弹性的开发方法。 换一种思路,直接从数据库表中提取系统各个栏位的中(英)文标识,而且,针对每一个所要显示的内容,在相关表中建立两个字段分别代表该标识的两种语言显示内容,通过系统全局变量(boolean类型)来控制两种语言使用环境。 然而,在系统设计和软件实现中,所要考虑的因素较多。如果对每个数据库表及其字段都设置中英文两个方式,再通过程序调用,这种方法可行,但浪费数据库资源,并且在程序实现时较繁琐。经过对多语言软件系统功能和实现方法的仔细分析和反复实验,并考虑该实现方法的模块化和通用性,提出了一种简单易行而又高效的实现方法,即:新建与中英文语言版本转换相关的三个数据库表单,采用组件方法开发了对应的三个类。 说明如下: FormName表:该表单与系统主菜单有关,包含所有数据库表单的中英文名称,提供MDI主窗体的菜单显示内容; FieldName表:该表单包括全部数据库表及其对应的所有字段的中英文内容。提供MDI子窗体中的栏位标识; SystemInfo表:该表单包含人机交互信息和标题栏、状态栏、按钮标签、快捷键提示等的中英文字段; ClsMenu类:和TableName对应,包含与中英文菜单转换有关的函数和子程序,其中最主要的子程序是SetMenuCaption,该子程序根据系统全局变量来设置MDI主窗体的中(英)文菜单; ClsField类:与FieldName表对应,包括与MDI子窗体中的栏位标识有关的函数和子程序,其中主要的子程序是GetFieldName,该子程通过调用FieldName表提取label标识的显示内容;
您可能关注的文档
- 浙江省临海市白云高级中学高中数学 §1.3.2奇偶性2学案 新人教A版必修1.doc
- 浙江省临海市白云高级中学高中数学 集合的表示法学案 新人教A版必修1.doc
- 浙江省临海市白云高级中学高中数学 一元二次不等式及其解法(2)学案 新人教A版必修1.doc
- 浙江省衢州市教学联盟体2014-2015学年九年级数学第一学期期中试卷(无答案).doc
- 浙江省绍兴一中2014-2015学年高二数学上学期期中试题 文.doc
- 浙江省绍兴一中2015届高三数学上学期期中试题 理.doc
- 浙江省温州市十校联合体2015届高三数学上学期期初联考试题 文(含解析).doc
- 重庆市巴蜀中学2015届高三数学上学期期中试题 理(无答案)新人教A版.doc
- 湖北省北大附中武汉为明实验学校八年级数学上册 第三次周测试题(无答案)(新版)新人教版.doc
- 湖北省北大附中武汉为明实验学校八年级数学上册 多边形学案(无答案)(新版)新人教版.doc
文档评论(0)