搜书网
发现
标签
注册
登录
搜书网
发现
榜单
标签
注册
登录
领域专用语言实战
文档评分:
4.0 (
0 个有效评分
)
文档语言:
中文
章节数量:
116
阅读人次:
4174
收藏数量:
0
内容来源:
[美] Debasish Ghosh
整理分享:
豆瓣
阅读
收藏
下载
分享
阅读
收藏
下载
分享
文档标签
DSL
JVM
Java
Ruby
Groovy
Scala
Clojure
文档概述
本书是第一本领域专用语言(DSL)的实战类图书,它面向真正的实践者,是一本让奋战在开发第一线的实干家备感实用的专著! 《领域专用语言实战》基于一系列JVM语言(Java、Ruby、Groovy、Scala和Clojure),分析了它们在实现DSL中的优劣势,同时也给出了丰富的示例。如果你是一位架构师,希望设计出极具表现力的API,让它既能满足领域用户的需要,又能达到高效开发的要求;如果你是一位有技术背景的特定领域用户,期待着改善与开发团队的沟通效果;如果你是一名程序员,正为如何与领域用户对接业务规则而苦恼……那么,请看这本书。 本书分三部分,以金融中介系统为例全面细致介绍从头设计、实现与使用领域专用语言的方方面面。它不仅讲解了DSL的实现手法,而且从最基本的技术入手,逐渐深入到高级技术,如元编程、解析器组合子,以及ANTLR、Xtext等开发框架。看完这本书,你将全面、深入地理解领域专用语言的定位、规范、术语,同时还可以把它作为具体开发工作的指导,学以致用,提高工作效率和质量。
书籍目录
书籍评论 (
0
)
序
前言
致谢
关于本书
读者对象
本书内容
排版约定
代码约定和下载
作者在线
关于作者
关于封面图片
关于封面图片
第一部分 领域专用语言入门
第1章 初识DSL
1.1 问题域与解答域
1.2 领域建模:确立共通的语汇
1.3 初窥DSL
1.4 DSL的执行模型
1.5 DSL的分类
1.6 何时需要DSL
1.7 DSL与抽象设计
1.8 小结
1.9 参考文献
第2章 现实中的DSL
2.1 打造首个Java DSL
2.2 创造更友好的DSL
2.3 DSL实现模式
2.4 选择DSL的实现方式
2.5 小结
2.6 参考文献
第3章 DSL驱动的应用程序开发
3.1 探索DSL集成
3.2 内部DSL的集成模式
3.3 外部DSL集成模式
3.4 处理错误和异常
3.5 管理性能表现
3.6 小结
3.7 参考文献
第二部分 实现DSL
第4章 内部DSL实现模式
4.1 充实DSL“工具箱”
4.2 内嵌式DSL:元编程模式
4.3 内嵌式DSL:类型化抽象模式
4.4 生成式DSL:通过模板进行运行时代码生成
4.5 生成式DSL:通过宏进行编译时代码生成
4.6 小结
4.7 参考文献
第5章 Ruby、Groovy、Clojure 语言中的内部DSL设计
5.1 动态类型成就简洁的DSL
5.2 Ruby语言实现的交易处理DSL
5.3 指令处理DSL:精益求精的Groovy实现
5.4 思路迥异的Clojure实现
5.5 告诫
5.6 小结
5.7 参考文献
第6章 Scala语言中的内部DSL设计
6.1 为何选择Scala
6.2 迈向Scala DSL的第一步
6.3 正式启程
6.4 制作一种创建交易的DSL
6.5 用DSL建模业务规则
6.6 把组件装配起来
6.7 组合多种DSL
6.8 DSL中的Monad化结构
6.9 小结
6.10 参考文献
第7章 外部DSL的实现载体
7.1 解剖外部DSL
7.2 语法分析器在外部DSL设计中的作用
7.3 语法分析器的分类
7.4 工具支持下的DSL开发——Xtext
7.5 小结
7.6 参考文献
第8章 用Scala语法分析器组合子设计外部DSL
8.1 分析器组合子
8.2 Scala的分析器组合子库
8.3 用分析器组合子设计DSL的步骤
8.4 一个需要packrat分析器的DSL实例
8.5 小结
8.6 参考文献
第三部分 DSL开发的未来趋势
第9章 展望DSL设计的未来
9.1 语言层面对DSL设计的支持越来越充分
9.2 DSL工作台
9.3 其他方面的工具支持
9.4 DSL的成长和演化
9.5 小结
9.6 参考文献
附录A 抽象在领域建模中的角色
A.1 设计得当的抽象应具备的特质
A.2 极简,只公开对外承诺的
A.3 精炼,只保留自身需要的
A.4 扩展性提供成长的空间
A.5 组合性,源自纯粹
A.6 参考文献
附录B 元编程与DSL设计
B.1 DSL中的元编程
B.2 作为DSL载体的Lisp
B.3 参考文献
附录C Ruby语言的DSL相关特性
C.1 Ruby语言的DSL相关特性
C.2 参考文献
附录D Scala语言的DSL相关特性
D.1 Scala语言的DSL相关特性
D.2 参考文献
附录E Groovy语言的DSL相关特性
E.1 Groovy语言的DSL相关特性
E.2 参考文献
附录F Clojure语言的DSL相关特性
F.1 Clojure语言的DSL相关特性
F.2 参考文献
附录G 多语言开发
G.1 对IDE的特性要求
G.2 搭建Java和Groovy的混合开发环境
G.3 搭建Java和Scala的混合开发环境
G.4 常见的多语言开发IDE
相关书籍
Scala程序设计:Java虚拟机多核编程实战
深入理解Java 7:核心技术与最佳实践
深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)
GitHub 漫游指南
编写高质量代码:改善Java程序的151个建议
Java TCP/IP Socket编程(原书第2版)
零基础学Java 第2版
漫谈设计模式:从面向对象开始
On Java 8 中文第5版
Java加密与解密的艺术
深入理解Android:卷II
JavaSE由浅入深
×
分享,让知识传承更久远
×
文档下载
请下载您需要的格式的文档,随时随地,享受汲取知识的乐趣!
PDF
文档
EPUB
文档
MOBI
文档