首页 文章 设计模式 用Groovy创建领域特定语言

邮件订阅

用Groovy创建领域特定语言 E-mail
用户评价: / 0
好 
作者:Craig Wickesser   
2008-03-01 23:55

今天(2月21日)是Groovy/Grails Experience大会(也就是大家所熟知的2GX)的第一天,会议在Virginia的Reston举行。该会议会持续3天,包括了四十个90分钟的专题、小组讨论以及代码研习会。今天的首个专题之一是Venkat Subramaniam的“DSL In Groovy”。领域特定语言的话题过去曾经出现在InfoQ上,包括Martin Fowler的领域特定语言介绍和Ian Roughley的关于用JRuby构建领域特定语言的文章。

Venkat的专题提供了关于什么是DSL、它们的特征、DSL类型(内部/外部)以及Groovy用来创建和使用它们的特性等相关信息。Venkat首先集中于使用一些Groovy的一些内置特性创建内部DSL(internal DSL)

除了这三个特性外,Venkat论述了Groovy对开发者没有约束以及其促进DSL的附加特性,包括:

在决定当创建DSL时使用哪种方法时,Venkat解释了使用Categories或ExpandoMetaClass的主要区别,
  • Categories允许你在战术上增强一个类
  • ExpandMetaClass在本质上更深远、全面
  • 你可能不想从全局影响一个类
  • Categories提供了受控的灵活性

领域特定语言正持续受到关注,而且可以用Groovy内置特性创建和使用。

最后更新于: 2008-03-01 23:55
 

欢迎转载

本站文章欢迎转载,但请注明出处(http://www.javajia.com,Java家)