在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → 领域特定语言(Domain Specific Languages)

领域特定语言(Domain Specific Languages)

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:5.53M
  • 下载次数:5
  • 浏览次数:59
  • 发布时间:2020-09-13
  • 实例类别:一般编程问题
  • 发 布 人:robot666
  • 文件格式:.pdf
  • 所需积分:2
 

实例介绍

【实例简介】
高清英文PDF版。 DSL领域的丰碑之作,软件开发“教父”Martin Fowler历时多年的心血结晶,ThoughtWorks中国翻译。    全面详尽地讲解各种DSL及其构造方式,揭示与编程语言无关的通用原则和模式,阐释如何通过DSL有效提高开发人员的生产力以及增进与领域专家的有效沟通。 《领域特定语言》是dsl领域的丰碑之作,由世界级软件开发大师和软件开发“教父”martin fowler历时多年写作而成,thoughtworks中国翻译。全面详尽地讲解了各种dsl及其构造方式,揭示了与编程语言无关的通用原则和模式,阐释了如何通过dsl有效提高开发人员的生产力以及增进与领域专家的有效沟
Section 9. 3. Source and Projectional editing Section 9.4. Illustrative Programming Section 9.5. Tools Tour. Section 9.6. Language Workbenches and case tools 14 Section g. 7. Should You Use a Language Workbench? Common Topics………………116 Chapter 10. A Zoo of DSls …117 Scction 10.1. Graphviz .117 Section 10.2. JMock Section 10.3. CSS Section10.4. Hibernate Query language(HQL).….…… 120 Section 10.5. XAML Section 106. fit 122 Section 10.7. Make et al. 124 Chapter 11. Semantic Model …4126 Section l1.1. How it works 126 Section 11.2. When Lo use Il ∴12 Section 11.3. The Introductory Example ( Java) 129 Chapter12. Symbol Table…… 130 Scction 12. 1. How It Works 130 Section 12.2. When to Use It Section 12.3. Further Reading Section 12. 4. Dependency Network in an External dsl Java and ANtLR) 32 Section 12.5. Using Symbolic Keys in an Internal DsL (Ruby) 134 Section 12.6. Using Enums for Statically 'Typed Symbols (ava) Chapter 13. Context Variable Section 13. 1. How It Works............. Section 13. 2. When to Use It Section 133. Reading an INI File(C#)....... 139 Chapter 14. Construction Builder. ection 14.1. How It Works 141 Scction 14.2. When to Usc It 41 Section 14-3. Building Simple Flight Data(C#) 142 Chapter 15. Macro..... 144 Section 15.1. How It Works on 15.2. When to Use It 150 Chapter 16. Notification 152 Section 16.1. how it works Section 16.2. When to use it Secion16.3.AVerySimpleNotification(C#).… …1533 Seclion 16.4. Parsing NolilicaLion Java)......... ……………………………………15.3 External dsL Topics……………………,…………………………157 Chapter 17. Dclimitcr-Dircctcd Translation Section 17.1. How It Work 8 Section 17.2. When to Use It. 160 Section 17-3. Frequent Customer Points(C#) Section 17.4. Parsing Nonautonomous Statements with Miss Grant's Controller (java) 5 Chapter 18 Syntax-Directed 'Translation Section 18.1 How It works 172 Section 18. 2. When to Use It Section 18. 3. Further reading. 8 Chapter 19. BNF …179 Section 19. 1. How It Works Section 19.2. When to Use It 8 Chapter 20 Regex Tablc Lexer Rebecca Parsons. 86 Section 20.1. How It Works 186 Section 20.2. When to use It 187 Section 20.3. Lexing Miss Grant's Controller (Java) Chapter 21 Recursive Descent Parser Rebecca Parsons 10O Section 21.1. How It Works 100 Section 21.2. When to Use It 192 Section 21.3. Further reading. 193 Section 21.4. Recursive Descent and Miss grant's Controller (java) 193 Chapter 22 Parser CoInbinalor Rebecca Parsons Section 22.1. How It works Section 22. 2. When to Use it 202 Section 22.3. Parser Combinators and Miss Grant's Controller (Java) Chapter 23 Parser generator. 209 Section 23. 1. How It Works 2O9 Section 23.2. When to Use It.. Section 233. Hello world (Java and antlr)........... 211 Chapter 24. Tree Construction Section 24.1. How It Works... Section 24.2. When to Use It ,220 Section 24-3. Using ANTLR's Tree Construction Syntax (Java and ANTLR) Section 24. 4. Tree Construction Using Code Actions (Java and ANTLR) Chapter 25. Embedded Translation. ·4 232 Section 25.1. How It Works Section 25.2. When lo Use IL..... Section 25-3. Miss Grant's Controller (Java and ANTLR) ……233 Chapter26. Embedded Interpretation…… Section 26. 1, How It works Scction 26.2. When to Usc it Section 26.3. A Calculator (ANTLR and Java Chapter 27 Foreign Code …………………239 Section 27.1. How It Works 239 Section 27.2. When to Use lt O Section 27-3. Embedding Dynamic Code (anti, Java, and Javascript) Chapter 28. Alternative Tokenization 247 Section 28. 1. How It Works ………247 Section 28. 2. When Lo Use il …252 Chapler 29 Nesled Operator Expression....... Section 29. 1. How It Works ……………………………………………253 Section 29. 2. When to Use It. 25 Chapter 30. Ncwlinc Separators 257 Section 30. 1. How It Wo Section 30.2. When to Use It.. …259 Chapter31. External dsl miscellany.……… Section 31.1. Syntactic Indentation. 260 Section 31.2. Modular Grammars... Internal DSL Topics…, 263 Chapter 32 Expression Builder …264 Section 32.1. How It Works. Section 32.2. When to Use It Scction 32.3. A Flucnt Calendar with and without a Builder java)..... 265 Section 32. 4. USing Multiple Builders for the Calendar (Java) 267 Chapter 33 Function Sequence 270 Section 33.1. How It Work 270 Section 33.2. When to Use It.......... Section 33-3. Simple Computer Configuration (Java)...... 271 Chapter 34. Nested Function Section 34. 1.How It Works 274 Section 34.2. When to Use It. 275 Seclion 34.3. The Simple Compuler Conliguralion Example (Java)....... 276 Section 34. 4. Handling Multiple Different Arguments with Tokens(C#) Section 34-5. Using Subtype Tokens for IDE Support (Java) Section 34.6. USing Object Initializers(C# ).. 280 Section 34-7. Recurring Events( C#) Chapter 35 Method Chaining.... 286 Section 35.1. How It Works....... 286 Section 35.2. When to Use It 8 Section 35-3. The Simple Computer Configuration Example (Java) 289 Section 35-4. Chaining with Properties( C#) 292 Section 35.5. Progressive Interfaces( C#) 293 Chapter 36 Object Scoping Section 6. 1. How It Works. 295 Section 36.2. When to Use It......... ………296 Section36.3. Security Codes(C#)…… 296 Section 36. 4. Using Instance Evaluation(Ruby) Scction36.5. Using an Instance Initializer(Java)….…… Chapter37. Closure.……… Section 37.1. How It Works …304 Section 37.2. When to Use It Chapter 38. Nested Closure 308 Section 38.1. How It Works Section 38.2. When to Use It 309 Section 38.3. Wrapping a Function Sequence in a Nested Closure (ruby) 4面i …310 Section 38. 4. Simple C# Example(C#) 311 Section 38.5. USing MeLhod Chaining(Ruby) 312 Section 38.6. Function Sequence with Explicit Closure Arguments( Ruby)........ …314 Section 38.7. Using Instance Evaluation(Ruby) 315 Chapter39. Literal list.….… 319 Scction 39. 1. How It Worl …319 Section 39.2. When to Use It.. 319 Chapter 40. Literal Map.. Section 40.1. How It Works ……320 Section 40.2. When to Use 320 Section 40. 3. The Computer Configuration Using Lists and Maps(Ruby) ion 40.4. Evolving to Greenspun Form(ruby) 322 Chapter 41. Dynamic Reception...... ……325 Section 41. 1. How It Works Section 41.2. When lo Use IL...................... Section 41.3. Promotion Points Using Parsed Method Names(ruby ).... Section 41.4. Promotion Points Using Chaining Ruby).... 330 Section 41.5. Removing Quoting in the Secret Panel Controller (JRuby) ….333 Chaptcr 42 Annotation 339 Section 42.1. How It Works …339 Section42.2. When to Use It..…… ……………………………………………341 Section 42.3. Custom Syntax with Runtime Processing Java) ……………342 Section 42.4. Using a Class Method (ruby ..... 343 Section 42.5. Dynamic Code generation(Ruby). 344 Chapter 43 Parse Tree Manipulation.......... 34 Section 43. 1. How It Works........ …346 Section 43.2. When lo Use IL. Section 43.3. Generating IMAP Queries froIn C# Condilions(C#). Chapter44. Class Symbol Table.…….… …356 Section 44.1. How It Works 35 Section 44.2. When to Usc It Section 443 Statically Typed Class Symbol Table (Java) ……35 Chapter 45. Textual Polishing Section 45. 1. How It Works Section 45.2. When to Use lt 363 Section 45-3 Polished Discount Rules (rub Chapter 46. Literal extension Section 46.1. How It Works Section 46.2. When to Use It. 366 Section 46.3. Recipe IngredienTs(C#). 1垂 Alternative Computational Models.…………………369 Chapter 47. Adaptive Model 37 Section 47.1. How It Works Section 47.2. When to Use It 373 Chapter 48 Decision table 375 Section 48.1. How It Works ………375 Section 48.2. When to Use Tt.. 76 Section 48.3. Calculating the Fee for an Order(c#) Chapter 49 Dependency Network …82 Section 49.1. How IL Works. 38: Section 49. 2. When to Use It 8 Section 49-3 Analyzing Potions(C#) 8 Chapter 50 Production Rule System... 388 Section 5o.1. How It Work Section 50. 2. When to Use It.... 391 Section 5o.3. Validations for club membership(C#) Section 50. 4. Eligibility Rules: extending the club membership(C#) 394 Chapter 51. State Machine. 399 Section 51.1. How It Works 399 Section 51.2. When to Use It...... 400 Section 51.3. Secret Panel Controller ( Java) 401 Code Generation…………402 Chapter 52 Transformer Generation Scction 52.1. How It Works 403 Section 52.2. When to Use It.... Section 52.3. Secret Panel Controller(Java generating C). ……404 Chapter 53 Templated Generation. 08 Section 53. 1. How It Works 408 Section 53.2. When to Use It........... 409 Section 53. 3. Generating the Secret Panel State Machine with Nested Conditionals (Velocity and Java generating C)................415 Chapter 54 Embedment Helper. 415 Section 54.1. How It Works. 415 Section54.2. When lo use il..…… 416 Section 54.3. Secret Panel States (Java and ANTLR) .416 Section 54. 4. Should a Helper Generate IITML? Java and velocity ).. 418 Chapter 55. Model-Aware Generation Section 55. 1. How It Works Section 55.2. When to Use It …422 Section 55-3 Secret Panel State Machine(C) Section 55.4. Loading the State Machine Dynamically(c) Chapter 56 Model Ignorant Generation 43 Section 56.1. How It Works …431 Section 56.2. When to Use It 13 Section 56.3. Secret Panel State Machine as Nested Conditionals (c) 432 Chapter 57. Generation Gap …434 Section 57.1. How It Works …………434 Section 57.2. When to Use It 435 Seclion 57.3. Generaling Classes froin a DaLa Schema java and a Lille ruby) 435 bvdindexIndex 440 § 【实例截图】
【核心代码】

标签:

实例下载地址

领域特定语言(Domain Specific Languages)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警