打开主菜单

求真百科

領域專用語言

基於DSL領域專用語言的軟體系統開發模式
原圖鏈接

领域专用语言(DSL,Domain Speciific Language)是一种计算机语言专用于一个特定的应用领域。这与通用语言(GPL)相反,后者广泛适用于各个领域。DSL种类繁多,从用于公共领域的广泛使用的语言(例如网页的HTML)到只有一种或几种软件使用的语言(例如MUSH软代码)。DSL可以根据语言的种类进一步细分,包括特定于域的标记语言,特定于域的建模语言(规范语言)和领域專用架構(Domain Specific Architecture)的编程语言。专用计算机语言在计算机时代一直存在,但是由于特定领域建模的兴起,术语“特定领域语言”变得越来越流行。简单的DSL,特别是单个应用程序使用的DSL,有时被非正式地称为迷你语言。[1]

領域特定語言是一種軟件語言,透過領域特定語言,領域專家以足夠精確的方式呈現他們的專業領域知識,並使其可執行。[2]

目录

應用

特定于领域的语言是专门为解决特定领域中的问题而创建的,并非旨在解决其外部的问题(尽管在技术上可能是可行的)。相反,创建通用语言来解决许多领域中的问题。该域也可以是业务领域。业务领域的一些示例包括:

  • 大型保险企业内部开发的针对人寿保险政策的特定领域语言
  • 用于战场模拟的领域特定语言
  • 用于薪资计算的特定领域语言
  • 特定领域的计费语言
  • 领域特定的语言介于小型编程语言和脚本语言之间,并且通常以类似于编程库的方式使用。这些概念之间的界限非常模糊,就像脚本语言和通用语言之间的界限一样。[1]

參考來源

  1. 1.0 1.1 DDD:DSL(领域专用语言)领域驱动设计系列. ShouKai. 2019-12-21 (中文). 
  2. the what and why of domain specific lanugages. Manning Free Content Center. 2019-12-21 (英语).