论文部分内容阅读
随着云计算和大数据时代的来临,用户对软件需求的多样性要求越来越高,但是,现有软件开发方法存在效率低下、算法设计中缺乏正确性和可靠性等问题,这些为软件开发带来了困难。因此,软件的开发效率和高可靠性一直是现代软件工程中关注的焦点,而软件形式化和自动化具有开发高可靠程序和提高开发效率的特性,为这类问题提供了一条有效的解决方法。PAR方法是由薛锦云教授提出的一种统一的、实用的算法设计和证明的新型软件开发方法,它定义了Radl算法设计语言来描述算法规约和Apla抽象程序设计语言来描述抽象程序。基于PAR方法而研制的PAR平台是一种自动算法程序生成系统,是PAR方法研究抽象算法程序与开发高级语言的辅助工具。Apla语言定义了大量的语言机制来支持泛型程序设计,而泛型程序设计可大幅度提高程序的可重用性、可靠性和开发效率,高抽象的泛型机制则有助于降低程序开发中的复杂度。本文的研究选取新型Java 8.0作为程序生成的目标语言,以Apla为宿主语言,在前期研究的基础上,进行拓展泛型程序设计,设计和实现了支持新型Java泛型机制的Apla-Java自动程序生成系统。在早期研制的Apla-Java生成系统中,目标语言Java属于Java5.0之前版本,本身并不支持泛型机制,如今Java语言已经具有成熟的泛型机制。因此,生成系统中实现新型Java泛型机制成为本课题研究的重点。Apla-Java生成系统中新型Java泛型机制的实现,为PAR平台的发展带来巨大的研究意义和实践价值。总结本课题的主要研究内容和实用价值有:(1)基于Apla泛型语言机制和新型Java泛型的研究,本文提出Apla泛型源程序对应到Java泛型目标程序的自动生成规则,并在Apla-Java算法程序自动生成系统中实现两种语言机制的等价性转换,最后通过大量泛型用例来验证系统设计的正确性。(2)在Apla-Java生成系统的目标语言中引入新型Java泛型机制,提高了源程序与目标程序之间的功能转换效率,且目标程序结构清晰、通用性强。(3)PAR方法中支持高抽象算法的泛型程序设计,保证了软件开发代码的质量和可靠性,提高了软件的重用性和开发效率。