与C#中的代码合同相反,JML代码合同只是在方法头部以注释形式使用的文本。那么将它们作为注释曝光会不会更好?这种方式即使编译信息的时候仍然存在于.class的元数据上,与评论相反,它们会被删除。为什么不将JML实现为Java中的注释?
我错过了什么吗?
与C#中的代码合同相反,JML代码合同只是在方法头部以注释形式使用的文本。那么将它们作为注释曝光会不会更好?这种方式即使编译信息的时候仍然存在于.class的元数据上,与评论相反,它们会被删除。为什么不将JML实现为Java中的注释?
我错过了什么吗?
从我所看到的JML出现Java注释之前好几年。当然,他们可以更新它来大概利用注释。
有使用Java注释JML的实验实现:
http://sourceforge.net/apps/trac/jmlspecs/wiki/JML6
希望它会以某种形式在今年(2010年)发布OpenJML。
+1 - “规范草案”技术报告的版权日期为1998-2006年。 – 2010-03-18 21:32:40