领域特定语言为什么DSL很重要_领域特定语言为什么DSL很重要试读-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 编程 > 领域特定语言 > 为什么DSL很重要

领域特定语言——为什么DSL很重要

本书2.2节会讲述更多细节,不过我觉得需要学习DSL(以及本书中提到的其他技术)的原因主要有两个。 第一个原因是提升程序员的生产力。先看下面这段代码: input =~ /d{3}-d{3}-d{4}/ 你会认出这是个正则表达式匹配,也许你还知道它匹配的是什么。正则表达式常常由于过于费解而遭受指责,但试想一下,如果你所能够使用的都是普通的正则控制代码,这段模式匹配会变成什么样子。而这段代码跟正则表达式相比,又是何等容易理解,容易修改? DSL的第一个优势是它擅长在程序中的某些特定地方发挥作用,并且让它们容易理解,进而提高编写、维护的速度,也会减少bug。 DSL的第二个优势就不仅仅限于程序员的范畴了。因为DSL往往短小易读,所以非程序员也能看懂这些驱动他们重要业务的代码。把这些真实的代码暴露在理解该领域的人们面前,可以确保程序员和客户之间有非常顺畅的沟通渠道。 当人们谈论这类事情的时候,他们常说DSL可以让你不再需要程序员。我对这一论调极度不认同,毕竟那是说COBOL的。不过也确实有些语言是由那些自称不是程序员的人来用的,比如CSS。对这种语言来说,读比写要重要得多。如果一个领域专家可以阅读并且理解核心业务代码中的绝大部分,那他就可以跟写这段代码的程序员进行深入细节的交流。 第二个原因是使用DSL并非易事,不过回报也是相当丰厚的。软件开发中最狭窄的瓶颈就是程序员和客户之间的沟通,任何可以解决这一问题的技术都值得学习。

展开全文

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

《领域特定语言》其他试读目录

• 写书初衷
• 为什么现在写这本书
• 为什么DSL很重要 [当前]
• 别畏惧这本大厚书
• 本书主要内容
• 本书读者对象
• 这是本Java书或者C#书吗
• 本书缺少什么
• 章节引用
• 模式结构
• 致谢