IT技术博客大学习 共学习 共进步

标签:DSL

共 6 篇相关文章

IT 浏览 2,120

从Java和JavaScript来学习Haskell和Groovy(DSL)

DSL(Domain Specific Language)指的是一定应用领域内的计算机语言,它可以不强大,它可以只能在一定的领域内生效(和GPL相比,GPL是General Purpose Language),表达仅限于该领域,但是它对于特定领域简洁、清晰,包含针对特定领域的优化。 当我们面对各种各样的特定需求的时候,一个通用的语言往往不能高效地提供解决问题的路径,相应的DSL并不是并非要解决所有的问题,但是它只关注于某一个小领域,以便解决那一个小领域的问题就好了。

IT 浏览 3,740

构建前端 DSL

目前在传统的软件开发领域 DSL 已经比较普遍, 特别是 Martin Fowler 的突出贡献。 而在前端领域尚较少涉及,而如果在前端开发中合理使用 DSL 同样也可以有效得减少代码数量,提高可读性,常见的一个应用场景即前端模板的构建。 本质上说模板也是一个微型语言,因此可以从DSL的角度着手,使用工具快速构建一个适合于特定前端框架的模板引擎。 本文将以 KISSY XTemplate 为例介绍如何构建前端的 DSL。

IT 浏览 3,160

API设计新思维:用流畅接口构造内部DSL

感谢@weidagang (Todd)向酷壳投递本文。 程序设计语言的抽象机制包含了两个最基本的方面:一是语言关注的基本元素/语义;另一个是从基本元素/语义到复合元素/语义的构造规则。在C、C++、Java、C#、Python等通用语言中,语言的基本元素/语义往往离问题域较远,通过API库的形式进行层层抽象是降低问题难度最常用的方法。比如,在C语言中最常见的方式是提供函数库来封装复杂逻辑,方便外部调用。 不过普通的API设计方法存在一种天然...

IT 浏览 2,860

基于DSL风格的代码重构

什么样代码是简洁易懂, 这很难有个统一的标准, 因为它很大程度上决定于所在团队的编写风格(往往偏向于核心程序员). 正因如此, 本文仅仅呈现一下DSL的编码风格, 若你喜欢, 不妨在自己的实践中也试试; 不欣赏者, 只当浮云飘过吧。