领域特定语言:修订间差异
无编辑摘要 |
无编辑摘要 |
||
第1行: | 第1行: | ||
{{Unreferenced|time=2022-01-06T05:01:21+00:00}} |
{{Unreferenced|time=2022-01-06T05:01:21+00:00}} |
||
{{expand language|en}} |
{{expand language|en}} |
||
'''領域特定語言'''(英語:domain-specific language),簡稱'''DSL''',是專門針對特定應用{{link-en|領域 (軟體工程)|Domain (software engineering)|領域}}的[[计算机语言]],和可以用在多種領域的{{link-en|通用電腦語言|general-purpose language|通用語言}}(GPL)恰好相反。像[[HTML]]專門用在[[網頁設計]]上,就屬於領域特定語言,也有些領域特定語言只用在一個或幾個軟體上,例如{{le|MUSH|MESH}}軟體碼。領域特定語言還可以依使用的語言分類,像是領域特定的[[標記語言]]、領域特定的[[建模語言]](或更廣義的[[規格語言]])以及領域特定的[[程式語言]]。從電腦發明開始,就已出現特定用途的電腦語言。而「領域特定語言」一詞是隨著[[特定域建模]](domain-specific modeling)的興起,才開始廣為使用。簡單的領域特定語言(特別是只有單一應用程式使用的領域特定語言),有時也會稱為'''迷你語言'''。 |
'''領域特定語言'''(英語:domain-specific language),也稱為'''特定域語言''',簡稱'''DSL''',是專門針對特定應用{{link-en|領域 (軟體工程)|Domain (software engineering)|領域}}的[[计算机语言]],和可以用在多種領域的{{link-en|通用電腦語言|general-purpose language|通用語言}}(GPL)恰好相反。像[[HTML]]專門用在[[網頁設計]]上,就屬於領域特定語言,也有些領域特定語言只用在一個或幾個軟體上,例如{{le|MUSH|MESH}}軟體碼。領域特定語言還可以依使用的語言分類,像是領域特定的[[標記語言]]、領域特定的[[建模語言]](或更廣義的[[規格語言]])以及領域特定的[[程式語言]]。從電腦發明開始,就已出現特定用途的電腦語言。而「領域特定語言」一詞是隨著[[特定域建模]](domain-specific modeling)的興起,才開始廣為使用。簡單的領域特定語言(特別是只有單一應用程式使用的領域特定語言),有時也會稱為'''迷你語言'''。 |
||
領域特定語言和通用語言之間沒有明確的界線,因為可能计算机语言原來有一些適用於特定領域的特徵,但也可以應用在更通用的範圍,相反的,也有可能一個计算机语言理論上可以用在多種領域,但實務上只用在特定領域中。像[[Perl]]一開始是設計為文字處理語言以及[[膠水語言]](和[[AWK]] |
領域特定語言和通用語言之間沒有明確的界線,因為可能计算机语言原來有一些適用於特定領域的特徵,但也可以應用在更通用的範圍,相反的,也有可能一個计算机语言理論上可以用在多種領域,但實務上只用在特定領域中。像[[Perl]]一開始是設計為文字處理語言以及[[膠水語言]](和[[AWK]]、[[外壳脚本|shell script]]的領域相同),但後來成為通用的程式語言。相反的,[[PostScript]]是[[圖靈完備性|圖靈完備]]的語言,但實際上只用作[[頁面描述語言]]。 |
||
==用途== |
|||
設計及使用適合的領域特定語言,是{{le|領域工程|domain engineering}}中重要的一環,作法可能是選擇適合此領域的現有語言(可能是某個領域特定語言或通用電腦語言),也可能是開發一種新的領域特定語言。[[面向语言的程序设计]]會把為了描述問題而創建特定語言一事,視為問題解決流程的標準步驟之一。假如用一種新的領域特定語言描述某種問題,會比用現有語言描述更加清楚,而且這種問題又常常出現,那麼創建此一領域特定語言(以及配合的軟體)就是值得的。領域特定語言可以針對特定的問題領域、特定的問題表示方式、特定的解決方案技術,或是某一領域的其他層面。 |
|||
==相關條目== |
==相關條目== |
||
*{{le|語言工作檯|Language workbench}} |
*{{le|語言工作檯|Language workbench}} |
2022年10月8日 (六) 11:22的版本
此條目没有列出任何参考或来源。 (2022年1月6日) |
此條目可参照英語維基百科相應條目来扩充。 |
領域特定語言(英語:domain-specific language),也稱為特定域語言,簡稱DSL,是專門針對特定應用領域的计算机语言,和可以用在多種領域的通用語言(GPL)恰好相反。像HTML專門用在網頁設計上,就屬於領域特定語言,也有些領域特定語言只用在一個或幾個軟體上,例如MUSH軟體碼。領域特定語言還可以依使用的語言分類,像是領域特定的標記語言、領域特定的建模語言(或更廣義的規格語言)以及領域特定的程式語言。從電腦發明開始,就已出現特定用途的電腦語言。而「領域特定語言」一詞是隨著特定域建模(domain-specific modeling)的興起,才開始廣為使用。簡單的領域特定語言(特別是只有單一應用程式使用的領域特定語言),有時也會稱為迷你語言。
領域特定語言和通用語言之間沒有明確的界線,因為可能计算机语言原來有一些適用於特定領域的特徵,但也可以應用在更通用的範圍,相反的,也有可能一個计算机语言理論上可以用在多種領域,但實務上只用在特定領域中。像Perl一開始是設計為文字處理語言以及膠水語言(和AWK、shell script的領域相同),但後來成為通用的程式語言。相反的,PostScript是圖靈完備的語言,但實際上只用作頁面描述語言。
用途
設計及使用適合的領域特定語言,是領域工程中重要的一環,作法可能是選擇適合此領域的現有語言(可能是某個領域特定語言或通用電腦語言),也可能是開發一種新的領域特定語言。面向语言的程序设计會把為了描述問題而創建特定語言一事,視為問題解決流程的標準步驟之一。假如用一種新的領域特定語言描述某種問題,會比用現有語言描述更加清楚,而且這種問題又常常出現,那麼創建此一領域特定語言(以及配合的軟體)就是值得的。領域特定語言可以針對特定的問題領域、特定的問題表示方式、特定的解決方案技術,或是某一領域的其他層面。
相關條目
这是一篇與科技相關的小作品。您可以通过编辑或修订扩充其内容。 |