基于契约式设计的Java编译器实现

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:snowmanuser
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
基于契约式设计(Design By Contract,DBC)这一理论是由Betrand Meyer提出的。DBC技术的核心是利用断言使方法及类的行为受到契约的约束,因此,将DBC与高级语言相结合的方式成为DBC技术的发展趋势。将DBC技术与现有的高级语言相结合的现有已实现技术中,或多或少的存在着不足之处。同时,DBC与高级语言相结合的方式不尽相同也带来了对于环境的不同的要求,在结合方式上进行转变,为DBC与高级语言的结合寻觅新的途径已成为迫切的需要。VeriJava是由标准Java语言结合契约式设计方式而产生的新语言,这一语言将契约作为语言要素添加入Java语言中,对方法进行编译和运行时的检验,同时也通过类契约,不变量等契约要素,帮助开发人员在开发的过程中及时找到设计错误或协调沟通问题,促进交流与理解,检验与修正开发过程中所出现的各类设计错误等,使开发过程更为完善。本文通过实现一个基于VeriJava语法与语义检查,验证的编译器,试图通过对方法的先决条件,后置条件以及对类契约,不变量等契约要素的转换进行编译时与运行时验证,在逻辑上保证方法的正确性,
其他文献
<正>随着终末期肾脏病"一体化治疗"技术的推广和普及,患者生活质量得到了明显提升,其中充分的血液净化治疗是基础和前提,对慢性肾衰患者的预后及生存质量有重要影响。肾性贫
伴随着经济全球化的发展,国际经营无论是对中国还是对其他国家的企业而言,都变的越来越重要。中国与美国等发达国家在海外投资方面还存在着巨大差距,宝洁公司、IBM公司、花旗
高性能计算机的广泛应用使得人们对高效并行软件的需求急剧增加。面对庞大、复杂且对时效性要求极高的计算任务,如何充分利用高性能计算机的软、硬件资源,加速计算任务的快速完
通过无皂沉淀法,以纳米二氧化硅替代表面活性剂,将丁醛通过高压均质机分散到聚乙烯醇水溶液中,制备了缩醛基含量75%以上,溶液黏度与市售树脂相当的聚乙烯醇缩丁醛(PVB)树脂(
导弹不论是进攻性的,还是防御性的,作为制海权和制空权的重要手段,已成为现代高科技战争的重要武器。导弹作战发射准备时可能有多种外干扰因素影响其上惯导系统,地面风干扰就是其
移动位置服务(Location Based Service,LBS)是通过移动网络获取移动终端的经纬度坐标,在地理信息系统的支持下为用户提供相应服务的一种移动增值业务。移动位置服务融合了移动
随着近来计算机网络技术、通信技术的飞速发展,基于因特网的全球性的计算平台已经建立起来;同时,由于高速无线通信技术的出现以及器件快速小型化,许多便携式设备如:笔记本电
在中国男权封建社会中,由于受三纲五常、三从四德等封建伦理道德的束缚,女性不仅丧失了自由,而且失去了尊严。文言小说《画皮》刻画了画皮与陈氏两位性格迥异的女性形象。虽
<正>会议纪要具有记载会议主要情况和议定事项的功能。然而,实际工作中许多应当会后遵照执行的议定事项往往随着会议纪要的存档成了档案资料,没有得到很好的落实。笔者结合自