写点什么

用 Groovy 创建领域特定语言

  • 2008-02-27
  • 本文字数:677 字

    阅读完需:约 2 分钟

今天(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 内置特性创建和使用。

查看英文原文: Creating Domain Specific Languages with Groovy

2008-02-27 19:441382
用户头像

发布了 150 篇内容, 共 50.2 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

软件测试/测试开发丨测试左移之Sonarqube maven项目分析

测试人

软件测试 自动化测试 测试开发 SonarQube 测试左移

架构训练营六-电商业务微服务拆分

白杨

一个由public关键字引发的bug

小小怪下士

Java 程序员 后端

首战字节被算法惨虐,复盘一个月再战字节成功拿下T3-1,

Java 数据结构 面试 算法

2023年会声会影最新版本六大新功能

茶色酒

会声会影2023

飞桨携手登临解读软硬一体技术优势,共推AI产业应用落地

飞桨PaddlePaddle

硬件 硬件产品 飞桨 软硬一体

Nautilus Chain 现已推出测试网“Triton ”,有哪些潜在的机会?

鳄鱼视界

ViewFlipper的基本使用

芯动大师

android ViewFlipper 翻转

三天吃透操作系统面试八股文

程序员大彬

Java 面试 操作系统

金蝶发布2022年财报,云业务收入连续三年增长超30%

科技热闻

阿里云弹性计算张献涛:计算巢,助力软件公司向软件服务公司转型

云布道师

云计算 阿里云

GPT-4 重磅发布,用户直呼:强得离谱

引迈信息

GPT-3 ChatGPT GPT-4

热点面试题:JS 如何判断一个元素是否在可视区域内?

Immerse

JavaScript 面试 前端面试题 元素状态

GPT-4:不了不了,这些我还做不到

禅道项目管理

GPT ChatGPT GPT-4

mkv格式怎么在mac电脑播放,mac上5款必备的视频播放器

Rose

视频播放器 MKV 苹果mac软件

API接口自动化测试框架搭建之需求整理、详细设计和框架设计

自动化测试 unittest 接口测试 API 测试框架

信创即时通讯-WorkPlus即时通讯软件支持国产化信创环境

BeeWorks

【Web安全】刚开始学渗透,零基础怎么入门?

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

Matlab常用图像处理命令108例(六)

timerring

图像处理

2023年中建信息&超聚变核心生态伙伴高峰论坛成功举办

极客天地

云加速,前所未见的游戏网络体验

安第斯智能云

云计算 网络 游戏 云存储 智能云

Orillusion正式公测开启,这份指南请收好!

Orillusion

开源 Web WebGL 渲染引擎 webgpu

3分钟快速了解GPT-4

Baihai IDP

人工智能 自然语言处理 AI ChatGPT GPT-4

H2 存储内核解析

陈飞

分布式事务 微服务架构 分布式数据库 分布式缓存 数据库内核

PyTorch深度学习实战 | 基于RNN的文本分类

TiAmo

CNN PyTorch

fastposter v2.13.0 一分钟完成开发海报 [云服务来袭]

物有本末

fastposter 海报生成 Java绘制图片 python开发海报

面试官:怎么给详情页做性能优化的?

程序知音

研发效能负责人/研发效能1号位 |DevOps负责人

laofo

DevOps cicd 研发效能 工程效能 工程效率

用Groovy创建领域特定语言_Java_Craig Wickesser_InfoQ精选文章