女性排卵期一般是什么时候| 腋下有异味是什么原因导致的| 道地药材是什么意思| 梦见大白蛇是什么预兆| 刚怀孕有什么办法打掉| 肚子不舒服挂什么科| 媾是什么意思| 口苦是什么原因引起的| 北上广深是什么意思| 豆汁是什么做的| 大便出血是什么原因引起的| 中国第一长河是什么河| 北宋六贼为什么没高俅| 1月4日是什么星座| 银针茶属于什么茶| 白化病是什么原因引起的| 边缘视力是什么意思| 站桩有什么好处| 破瓦法是什么| 堪称什么意思| 尿毒症可以吃什么水果| 捞面条配什么菜好吃| 三项规定内容是什么| 粘液丝是什么| 眼晴干涩模糊用什么药| 静静的什么| 碳酸钠是什么东西| 玉米什么的什么的| 知乎是干什么的| 大肠杆菌感染吃什么药| 肺部ct应该挂什么科| 滋阴潜阳是什么意思| 父亲节应该送什么| ip什么意思| btc是什么意思| 国资委主任是什么级别| 子宫内膜炎吃什么药| 消化道出血吃什么药| 肺部结节灶是什么意思啊| 蛋白石是什么石头| 儿茶酚胺是什么| 霉菌性阴道炎是什么原因引起的| 7月出生是什么星座| 回执单是什么| 痔疮吃什么药好| 做ct挂什么科| 凝滞是什么意思| 精液是什么味道的| 十月十号是什么星座| 软是什么意思| 吹泡泡是什么意思| cp什么意思网络用语| 打嗝是什么原因| 崖柏是什么| 睡着了放屁是什么原因| 尿道口感染吃什么药| 齿痕舌吃什么药| 葡萄膜炎是什么原因引起的| 眉毛有什么作用| 01年属什么生肖| 缺失是什么意思| 白细胞低代表什么意思| 什么是双规| 丑时五行属什么| 龟头是什么意思| cashmere是什么面料| 三月三是什么星座| 喉咙红肿吃什么药| 孤帆远影碧空尽的尽是什么意思| 柠檬黄配什么颜色好看| 口腔异味挂什么科| 牙齿根管治疗是什么意思| 耳石症看什么科| 怜悯之心是什么意思| 舌头裂纹吃什么药| 开车穿什么鞋最好| 乳糖醇是什么| 黄瓜苦是什么原因| 眼皮有点肿是什么原因| 脂溢性脱发是什么原因引起的| 清对什么| 血糖有点高吃什么食物好| 安眠药有什么副作用| 弯脚杆是什么意思| 指尖发麻是什么原因| 身上皮肤痒是什么原因| 大运是什么| 九天是什么意思| 宫颈活检cin1级是什么意思| 月光像什么| 甲状腺分泌什么激素| 羊悬筋是什么样子图片| 茜是什么意思| 恒牙是什么牙| 女人戴黄金有什么好处| 什么越来越什么| 晕车药什么时候吃| 女人吃什么增加雌激素| 运动后出汗多是什么原因| 扁桃体切除对身体有什么影响| 什么叫膳食纤维| 卖是什么意思| 东边日出西边雨是什么生肖| 老年痴呆症又叫什么| 眼睛痛吃什么药好得快| 睡觉容易醒是什么原因| 月经准时来说明什么| 路征和景甜什么关系| 汞是什么| hpv56阳性是什么意思| 薏米和什么一起煮粥最好| 眼睛肿是什么原因引起的| 端庄的意思是什么| 古代上元节是什么节日| 属蛇的人适合佩戴什么| 处女和什么座最配对| 等闲变却故人心却道故人心易变什么意思| 浅表性胃炎吃什么药好| 陈皮治什么病| 小龙虾不能和什么一起吃| 自愈什么意思| 情非得已是什么生肖| 黄精什么功效| 太阳穴痛是什么原因| 心率快是什么原因| 吃什么水果对胃好| 均一性红细胞什么意思| 青青子衿什么意思| 大专什么专业好就业| 硬金是什么意思| 为什么要活着| 黄色衣服配什么颜色裤子好看| 花是植物的什么器官| 什么能美白皮肤而且效果快| 聚乙二醇是什么| 尿微肌酐比值高是什么情况| 为什么小孩子有白头发| 法国用什么货币| 轻度脂肪肝吃什么药| 早晨起来手肿是什么原因| 射精太快吃什么药| 蒲公英的花是什么颜色| 夏天什么颜色最防晒| 最好的洗发水是什么牌子| 西瓜不能跟什么一起吃| 三文鱼长什么样| 老年人助听器什么牌子好| 乙肝两对半145阳性是什么意思| 黄芪什么时候种植| 什么时候同房容易怀孕| 什么是精神病| 头晕呕吐是什么原因| 什么是铅| 卜留克是什么菜| 为什么我的| zro是什么牌子| 泌尿科主要看什么病| 鸡项是什么鸡| 吃什么补叶酸| 师长相当于地方什么级别| 什么是德行| 悲催是什么意思| 什么时候怀孕几率最高| 女性下面长什么样| 长命百岁是什么生肖| 脚发麻什么原因| 血压正常心跳快是什么原因| 外阴瘙痒用什么| 心脏支架是什么材料做的| 小腿肿胀是什么原因引起的| 天干是什么意思| 忐忑什么意思| 梦见小麦粒是什么意思| 投影仪什么牌子好| 小麦淀粉是什么| 水泡长什么样| 毛发旺盛女生什么原因引起的| 博士和博士后有什么区别| 男士内裤买什么牌子好| 什么叫反式脂肪| 属羊的是什么命| 胃癌挂什么科| 腹泻肚子疼吃什么药| 盆腔炎有什么症状| 吕布的武器叫什么| 临界心电图是什么意思| 盆腔镜检查是查什么的| 小孩疝气看什么科室| 脸上长痘是什么原因| 恶心想吐肚子疼是什么原因| 皮炎是什么症状| 人为什么会打喷嚏| 知是什么意思| vp是什么| 腹部疼挂什么科| 女性外阴瘙痒用什么药| elsa是什么意思| 紫得什么| 治霉菌性阴炎用什么药好得快| 杏花代表什么生肖| 尿骚味重是什么原因| 喉咙痛感冒吃什么药| 汉高祖叫什么名字| 一步两步三步四步望着天是什么歌| 清凉补是什么| 灰配什么颜色好看| 新鲜感是什么意思| 中国最长的河是什么河| 头发打结是什么原因| 历久弥新是什么意思| 梦到和老公离婚了是什么征兆| bb霜和cc霜有什么区别| 尿蛋白什么意思| 四川代表什么生肖| 大学院长是什么级别| 梦见男朋友是什么意思| 红小豆和赤小豆有什么区别| 米粉和米线有什么区别| 王妃是什么意思| 大腿外侧什么经络| 腰椎穿刺是检查什么的| 龋齿和蛀牙有什么区别| 什么是禁欲| 毛囊炎吃什么药| 6.8什么星座| 糖耐筛查主要检查什么| 长期吃阿司匹林有什么副作用| 风水宝地是什么生肖| 属狗和什么属相不合| 什么叫自私的人| 咳痰带血是什么原因| 日成念什么| 今年66岁属什么生肖的| 晚上左眼皮跳预示什么| 颠三倒四是什么意思| 小肚子痛吃什么药| 鸡肚是什么部位| 1945属什么生肖| 宝宝发烧挂什么科| 女士喝什么茶叶对身体好| 得过且过是什么意思| 恶病质是什么意思| 乌龟属于什么动物| 做牛排需要什么调料| 卫冕冠军是什么意思| 什么什么一惊| 乙肝病毒表面抗体弱阳性什么意思| 气压治疗是什么| opc是什么意思| 梦见自己头发长长了是什么意思| 花开花落不见你回头是什么歌| gold是什么意思| 螺蛳粉是什么做的| 十一月三号是什么星座| 弱精是什么意思| 什么叫蜘蛛痣| 去肝火喝什么茶| 辅酶q10是什么| 蜂蜜跟什么不能一起吃| 虫草花有什么功效和作用| 皮脂膜是什么| 珊瑚是什么| 天蝎座和什么星座不合| 颜控是什么意思| 百度跳转到内容

网络文学要靠责任增加“厚度”

维基百科,自由的百科全书
百度 欢欢喜喜过大年,是要越热闹越好的年味儿,还是要难得的几天安静悠闲?其实,我们每个人心里都有两个春节,一个是记忆中的热闹却也嘈杂的节日,一个是努力创造或希望得到的一周安静时光。

领域特定语言(英语:Domain-specific language缩写DSL),也称为特定域语言,是专门针对特定应用领域[注解 1]计算机语言,和可以用在多种领域的通用语言英语general-purpose language(GPL)恰好相反。像HTML专门用在网页设计上,就属于领域特定语言,也有些领域特定语言只用在一个或几个软件上,例如MUSH英语MESH软件码。领域特定语言还可以依使用的语言分类,像是领域特定的标记语言、领域特定的建模语言(或更广义的规格语言)以及领域特定的编程语言。从电脑发明开始,就已出现特定用途的电脑语言。而“领域特定语言”一词是随着特定域建模(domain-specific modeling)的兴起,才开始广为使用。简单的领域特定语言(特别是只有单一应用程序使用的领域特定语言),有时也会称为迷你语言

领域特定语言和通用语言之间没有明确的界线,因为可能某计算机语言原来有一些适用于特定领域的特征,但也可以应用在更通用的范围,相反的,也有可能某计算机语言理论上可以用在多种领域,但实务上只用在特定领域中。像Perl一开始是设计为文字处理语言以及胶水语言(和AWKshell script的领域相同),但后来成为通用的编程语言。相反的,PostScript图灵完备的语言,但实际上只用作页面描述语言(领域特定语言)。

用途

[编辑]

设计及使用适合的语言,是领域工程英语domain engineering中重要的一环,作法可能是选择适合此领域的现有语言(可能是某个领域特定语言或通用电脑语言),也可能是开发一种新的领域特定语言。面向语言的程序设计会把为了描述问题而创建特定语言一事,视为问题解决流程的标准步骤之一。假如用一种新的领域特定语言描述某种问题,会比用现有语言描述更加清楚,而且这种问题又常常出现,那么创建此一领域特定语言(以及配合的软件)就是值得的。领域特定语言可以针对特定的问题领域、特定的问题表示方式、特定的解决方案技术,或是某一领域的其他层面。

用在设计和实现上

[编辑]

领域特定语言是在设计和实现上有特定目的的语言(或是宣告的语法或是文件)。领域特定语言可以是视觉对话语言(visual diagramming language),例如Generic Eclipse Modeling System英语Generic Eclipse Modeling System中建立的语言,可以是程式化抽象,例如Eclipse Modeling Framework,也可以是文字语言。例如,命名列工具grep正则表达式语法,可以在文字中寻找特殊排列规则的文字。sed工具定义了匹配和取代正则表达式的语法。一般来说,这些小工具可以在壳层内整合使用,以达到复杂的系统工作。

有时领域特定语言和脚本语言之间没有清楚的分界,不过领域特定语言多半没有处理档案系统的低阶功能、跨行程控制、以及一些全功能编程语言或脚本语言必须有的功能。许多领域特定语言不会编译成字节码或是可执行档,而会转换为许多不同的媒体格式。像GraphViz可以输出PostScriptGIF档、JPEG档等。Csound则会编译成声音档。像是POV-Ray之类的光线追踪(ray-tracing)领域特定语言会转换为图形档。像是SQL之类的电脑语言会有种特殊的情形:SQL是针对特定领域(存取和维护关联数据库)的,所以的确是领域特定语言,也常会其他应用程序呼叫,但SQL的关键字及函数比许多脚本语言都多,一般也会视为是独立的语言,有可能是因为在程式中数据库使用的普及性,以及要成为此语言专家需要有的掌握程度。

许多领域特定语言也有提供API,因此可以在其他程式执行时呼叫此API,不影响原程式的流程,此运作方式类似程式的函式库,和脚本语言之间的差异就更小了。

程式开发工具

[编辑]

有些领域特定语言会随着时间扩展,加入全功能的程式开发工具,因此更增加了该语言是否是领域特定语言的问题难度。

模型驱动工程中,有许多领域特定语言的例子,像是用断言说明模型的OCL英语Object Constraint Language、或是领域特定的转换语言QVT英语QVT,不过统一建模语言(UML)反而是通用的建模语言。

有一个类推可以说明超小型语言及领域特定语言:超小型语言像是刀,有许多不同的使用方式,从切食物到锯树都可以。领域特定语言像是电钻,也有很多不同的使用方式,不过都是用来在东西上钻洞上。通用特定语言是完整的完整的工作台,有许多特别用来进行特定工作的工具。程序员使用领域特定语言的方式类似他们看工具台,知道他们需要一个较好的电钻,而且找到一个刚好适用的领域特定语言。

优点和缺点

[编辑]

领域特定语言的一些优点如下[1][2]

  • 领域特定语言可以使解决方案以较简洁的方式呈现,而且达到问题域上的抽象层次。意思就是领域专家自身可以理解、验证、修改,甚至开发领域特定语言的程式。不过,可以达到此程度的例子不多[3]
  • 领域特定语言可以达到领域层次的计算机安全。只要其语言构造(language construct)是安全的,以此写的所有程式码可以视为是安全的[来源请求]
  • 领域特定语言有助于将商业资讯系统的开发,从传统的软件开发者转到领域专家身上,此一群体人数较多,对此一领域有较深入知识,但程式技术较为不足[4]
  • 若领域特定语言的scope较小,会比较容易学习。

领域特定语言的一些缺点如下:

  • 学习新语言的成本。
  • 应用范围受限。
  • 设计、实现及维护领域特定语言以及开发工具(集成开发环境)的成本。
  • 寻找、设定及维护适当的语言scope。
  • 设计领域特定语言时,需在领域专门的语言构造,以及通用的语言构造之间取舍平衡。
  • 相较于程序员撰写的程式码,领域特定语言的效率可能会比较低。
  • 同一领域可能有计多种非标准语言,例如不同保险公司开发、使用的领域特定语言[5]
  • 非技术背景的领域专家不容易自行撰写或修改领域特定语言的程式[3]
  • 领域特定语言和(用通用语言撰写的)IT系统其他模组不易整合。
  • 特定领域特定语言的专家人数较少,会带来人力成本的增加。
  • 不容易找到相同领域特定语言的程式码范例。

注解

[编辑]
  1. ^ 此处的领域也可能是指业务领域(business area),例如寿险政策、战斗模拟、薪资计算、账单管理等

相关条目

[编辑]

参考资料

[编辑]
  1. ^ Marjan Mernik, Jan Heering, and Anthony M. Sloane. When and how to develop domain-specific languages. ACM Computing Surveys, 37(4):316–344, 2005.doi:10.1145/1118890.1118892
  2. ^ Diomidis Spinellis. Notable design patterns for domain specific languages页面存档备份,存于互联网档案馆). Journal of Systems and Software, 56(1):91–99, February 2001. doi:10.1016/S0164-1212(00)00089-3
  3. ^ 3.0 3.1 Freudenthal, Margus. Domain Specific Languages in a Customs Information System. IEEE Software. 1 January 2009: 1. doi:10.1109/MS.2009.152. 
  4. ^ Aram, Michael; Neumann, Gustaf. Multilayered analysis of co-development of business information systems (PDF). Journal of Internet Services and Applications. 2025-08-08, 6 (1) [2025-08-08]. S2CID 16502371. doi:10.1186/s13174-015-0030-8可免费查阅. (原始内容存档 (PDF)于2025-08-08). 
  5. ^ Miotto, Eric. On the integration of domain-specific and scientific bodies of knowledge in Model Driven Engineering (PDF). [2025-08-08]. (原始内容 (PDF)存档于2025-08-08). 
梦见别人生孩子预示什么 涮菜都有什么菜 梓什么意思 门道是什么意思 经常看手机有什么危害
糖尿病人吃什么 纲是什么意思 蛇蝎美人是什么意思 通草是什么 张牙舞爪的张是什么意思
肝实质回声不均匀是什么意思 发烧吃什么水果好 山楂什么季节成熟 一醉方休下一句是什么 权衡利弊是什么意思
太阳穴长痘痘什么原因 1968属什么 腰突挂什么科 质询是什么意思 立是什么生肖
孕妇可以吃什么零食hcv8jop0ns9r.cn 为什么医生都不体检hcv8jop3ns7r.cn 靠北是什么意思xscnpatent.com 比丘什么意思hcv7jop9ns2r.cn 回南天什么意思hcv9jop8ns1r.cn
静养是什么意思hcv8jop7ns4r.cn 心理素质差是什么原因hcv8jop5ns4r.cn 上善若水下一句是什么hcv9jop8ns2r.cn 角是什么结构hcv8jop8ns8r.cn 81年属什么的hcv7jop9ns2r.cn
小孩晚上睡觉发梦癫什么原因hcv8jop6ns1r.cn 沉香是什么味道hcv9jop6ns3r.cn 什么拉车连蹦带跳hcv8jop1ns8r.cn 一什么童话hcv9jop7ns5r.cn 夹腿是什么imcecn.com
拍手腕中间有什么好处hebeidezhi.com gc是什么意思hcv9jop2ns5r.cn 产检挂什么科hcv9jop1ns5r.cn 什么有作为hcv9jop3ns3r.cn 费率是什么hcv7jop5ns5r.cn
百度