写点什么

文章:使用 Ruby DSL 实现敏捷素材管理

  • 2007-09-26
  • 本文字数:606 字

    阅读完需:约 2 分钟

领域特定语言(Domain Specific Language,简称 DSL)是一个面向语言的工具,用于解决某个特定领域的编程任务。DSL 的一般语言特征和它所被用到的问题领域,关系是非常密切的,并且在一个非常高的抽象层面上起作用。Martin Fowler 在他介绍 DSL 的文章中,将 DSL 划分为外部 DSL 和内部 DSL 两类(参见原文链接)。外部 DSL 是一门需要编译或者解释运行的编程语言,而内部 DSL 则构建于一门通用编程语言(general-purpose programming language)之内。实际上,内部 DSL 对于其宿主通用编程语言来说,就是它的一套层次非常高的 API。本文讲述了了在 PLANET ARGON 公司的一个开发项目中,用 Ruby 实现的一个内部 DSL 如何给项目带来巨大贡献。

文章从实际出发,先介绍 PLANET ARGON 公司近期要完成的一个项目。这个项目的目标是,使用 Ruby on Rails 构建一个一次性的内容管理系统,这个系统要支持 18 种语言,并且管理大约 1000 个的图像文件。这些文件中有许多都是专业摄影图片,每个文件大小都超过 1MB。而另外的图片文件则是一些细碎的线条艺术,图片里面显示的就是许多不同的国旗。这些图片所具备的相同特点,就是它们都还不能直接投入产品使用。

听起来这个项目就够复杂的了,作者开始的时候使用了钩子在模型内部操作 API,但随着需求的不断被调整,即使在项目中使用批处理脚本也不能满足这些变化。在本文中,作者提供了一个解决此问题的可持续发展的方式。

阅读全文:使用 Ruby DSL 实现敏捷素材管理

2007-09-26 04:571204
用户头像

发布了 117 篇内容, 共 21.0 次阅读, 收获喜欢 0 次。

关注

评论

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

你是否已经精通了SpringBoot的执行器功能了呢?不精通就来学

Java 程序员 后端

你知道面试必问的AOP吗?通过Spring又如何实现呢?

Java 程序员 后端

从这五个方面看hashmap,新手一遍就能懂

Java 程序员 后端

你有效地管理JVM的垃圾了吗?是时候把垃圾拿出来了!

Java 程序员 后端

你还在使用 try-catch-finally 关闭资源?

Java 程序员 后端

使用Redis和Java进行数据库缓存 - DZone数据库

Java 程序员 后端

你是否精通springcloud:使用SpringCloud进行同步通信?

Java 程序员 后端

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

Java 程序员 后端

外包学生管理系统 - 详细架构设计

奔奔

WICC · 广州 | 圆桌对话:社交泛娱乐 & 出海的机遇与挑战

融云 RongCloud

通信云 社交 泛娱乐 出海

你看得起劲的斗鱼直播,已经在 GitHub 开源了自家项目!

Java 程序员 后端

你懂的!EL表达式与JSTL标签库

Java 程序员 后端

你能读懂微服务架构深度解析:架构设计背后的哲学吗?

Java 程序员 后端

区块链将会深度应用于乡村振兴

CECBC

Github霸榜月余~,原来是阿里大咖的千亿级并发系统设计手册上线了

Java 编程 程序员

自定义View:如何实现一个双击放大缩小的图片控件

Changing Lin

11月日更

作为一名程序员,你觉得最重要的能力是什么?

Java 程序员 后端

你以为自己Nginx掌握的很好?这份1330页Nginx笔记,颠覆你的认知!

Java 程序员 后端

你居然还去服务器上捞日志,搭个日志收集系统难道不香么!

Java 程序员 后端

电竞入亚,行业爆发,你的游戏是否还缺个「大招」?

融云 RongCloud

游戏 社交 泛娱乐

你必须了解的微服务架构设计的10个要点!

Java 程序员 后端

认知未来货币需要新的思想资源

CECBC

以后面试再也不怕被问Java并发编程了,多亏了这本PDF电子书

Java 程序员 后端

融云与 HIFIVE 达成战略合作,共创「沉浸式」社交解决方案

融云 RongCloud

通信云 语聊房 语音社交

你能读懂微服务架构深度解析:架构设计背后的哲学吗?(1)

Java 程序员 后端

嘉宾就位 | Unity、Beeto、荔枝、阿里云、StarMaker、LiveMe、积目…花城论剑

融云 RongCloud

通信云 社交 元宇宙 泛娱乐 出海

Redis 6.0 新特性篇:客户端缓存全面揭秘

码哥字节

redis 缓存 NoSQL 数据库 11月日更

难以置信!数字货币袭来!这类人都要富起来了 !

CECBC

你还搞不定生涩难懂的Spring-Aop?梳理完毕以后原来如此简单

Java 程序员 后端

传授一套月薪20k程序员的高薪秘籍

Java 程序员 后端

作为Java面试官,我会问Java程序员一些什么问题?

Java 程序员 后端

文章:使用Ruby DSL实现敏捷素材管理_Ruby_Jeremy Voorhis_InfoQ精选文章