2.4版本的Xtend介绍了动态注解的概念,它使得开发者能够参与到Xtend源代码到Java源代码的转换中。如今,2.4.3版本的Xtend使动态注解能够访问文件系统。编程
Xtend是静态类型的编程语言,须要转换成Java代码,尽管它很是接近Java语言,可是它扩展了许多句法结构,而这是Java所没有的。经过Xtend,开发者可使用lambda表达式、类型推断、扩展方法和其余不少东西。设计模式
一般Xtend被用于Eclipse Java IDE中,保存一个Xtend代码文件,在后台它就能够被很快的转换成Java代码,自从Xtend和Java能够同时存在于一个项目中,Xtend就颇有可能在源代码中引用Java类和方法,反之亦然。此外,Xtend引用的句法结构能够存在于Java类中。这样,它也有可能能够从第三方库中扩展示有功能。编程语言
动态注解被用来改善Xtend和Java代码之间的转换过程。它们的工做方式相似于宏命令或者Object-c编译器指令,也能帮助减小引用代码量。举个例子,用"@singleton"注解的Xtend类和继承于Java的类能够自动的包含必要的代码来反射出代码的设计模式。尽管那些结构在之后的阶段中会被生成,它们也会当即访问其余的Xtend类。以上包含"@singleton"类会想外界暴露出一个getInstance()方法,而这只要使用注解便可完成。翻译
现在经过接受一个文件系统的API,开发者就可使用动态注解来建立除源代码以外的手工代码。Sven Efftinge,Xtend项目开发的负责人,在blog entry中展现了动态注解如何支持国际化。一个包含的static String的Xtend类被注解,而后它就能够建立包含静态方法的Java类访问常数和一个包含字符串的相应的属性文件。其余的用处是可使用源文件就能够自动的生成签名或者摘要。设计
临时的动态注解已经获得了一个新的编译器和API,可使用户在编译期间与文件系统进行交互。这一方面对于在配置文件或者通常项目源上生成签名颇有用处,另外一方面容许基于代码更新或者完成生成这样的资源。blog
原文地址:http://www.infoq.com/news/2013/09/active-annotations-filesystem继承
饭后茶余翻译觉得乐趣,如有误,恳请斧正!ip