注意事项:
避免语言的扩展特性
不管我们依据哪一种形式的方法进行编程,一般要选择比较老的程序库或文件。比较老的程序库里面的一些原有程序和公式都是很规范的和标准的,不像现在的一些新的程序库一样比较的杂乱无章。有非常普遍出现的故障在跨平台上产生,有时在获得支持后,还是会出现没有定义精确的事故。跨平台开发是对异常灵敏度要求很高的,无限度的利用新特性,就会使软件很难排除异常情况。所以,在跨平台开发时要调用C++的标准函数模型,这样就会使已开发的软件和产品的稳定性更加强。
实现动态处理
在实际的开发过程中,每当编写一个旨在多种环境中运行的可移植代码库时,项目的开发就会不可避免的面临一个问题,即怎样处理在一个平台上有而在另外无合平台上没有的特性。
使用脚本文件进行管理
要达到使编写的程序代码简洁、易懂的目的,要使软件的结构更加的合理,这就要求先把与平台相关联的文件和数据库分割开来,再把在开发期间要用的脚本文件进行编译,再合理的分到各个部位。在使用应用程序时,要把配置文件里的配置选项调出来进行读取里面的程序。因此,当跨平台软件开发时,要使与平台相关联的文件全部进行分离,要利用特殊的手段来实现该功能。
使用安全的数据串行化
如何使用安全和可靠的对数据进行存储和加载是跨平台要解决的核心问题。利用软件的“fwrite”或“fread”指令可以对每个编译器和单一目标平台处理。若果是在跨平台的操作环境中,利用这种方法对数据进行存储和加载就不能做到平台间的独立性。如果要利用跨平台对数据存储到目标文件外,不同平台间是有差异的,这样也会引起结果的多样性。
跨平台开发中的编译与测试
当进行跨平台软件开发时会与修改和编写的很多代码有关联,相关联的代码会在很长的时期内不能在另外的平台检测,也会造成bug的潜藏时间增长。所以,要在多个不同的平台下进行测试,这样就能及时发现bug。
实现抽象
实现抽象是处理跨平台中应用程序能被移植难题的有效方式。通过这种方式我们就能不利用一般的结构体系而进行单独的软件开发,同时还能够使编出的程序更加的独立化和简洁化。当对跨平台进行开发时,会有非常多的函数要进行利用,但是开发时不用编译所有的函数,通常使用的方法是封装,这些就是实现抽象的过程。封装的方法并不是在任何情况下都是适用的,当遇到一些特殊的情况时,我们要使用其他的方式来进行程序的调用,我们提前可以将编写好的功能程序存放到程序空中,并以该功能命名,当我们使用该程序或公式的时候,可以直接调用该功能的程序,便可以实现该功能。不管选用哪一种方式无非是对任意接口函数与平台中的联系进行隐藏。
参考文献
[1]夏雪挺.跨平台数据库备份的设计与实现[D].西南交通大学,2006.
[2]孙波.跨平台工具软件在控制软件开发中的应用[D].上海交通大学,2009.