特定领域语言资源
我只是在听一些较旧的.Net Rocks!剧集,我发现DSL上的#329很有趣。我的问题是,对于尝试学习该技术的人们来说,我找不到任何好的在线资源。我掌握了创建新设计师的基础知识,但是缺少DSL工具使用的T4引擎的MS文档,以及如何将模板与DSL模型集成在一起的知识。
有人知道MS DSL工具的一些很好的入门资源吗?
解决方案
回答
由于我们要关注的是MS-world,因此我们可能需要查看F#。它具有扩展其语法以编写域特定语言的能力(有关示例代码,请参见第16页此链接)。
回答
DSL工具团队的架构师写了一本书,《使用Visual Studio DSL工具进行特定领域的开发》。该书的网站上还有其他链接和资源。
回答
如果我们对DSL感兴趣,Jeff Moser在他的博客,这里和这里写了一些很棒的文章(以及我们需要的"元"思维框架)。
回答
马丁·福勒(Martin Fowler)目前正在写有关DSL的书。这是他就该主题发表的演讲。
回答
Boo是DSL的绝佳选择。我一直在将其用于设置IoC容器,定义路由,验证规则之类的事情。 Ayende Rahien正在为Manning写一本很棒的书,名为《在Boo中构建领域特定语言》
回答
- PODCAST:SE-Radio中与DSL相关的讨论
回答
马丁·福勒(Martin Fowler)正在写有关DSL的书。到目前为止,我们可以在这里阅读他的作品http://www.martinfowler.com/dslwip/
我还参加了Jay Fields的精彩演讲(他的幻灯片在这里)。
回答
我发现以下页面和许多网络广播非常有用:
http://msdn.microsoft.com/zh-CN/vsx/cc677256.aspx
回答
我建议使用DSL工具的http://msdn.microsoft.com/zh-cn/vsx/cc677256.aspx作为入门。
另外,请查看MDSD(模型驱动开发)的概念。
Markus Voelter是该主题(和DSL)的专家:http://www.voelter.de/
我相信MDSD,软件生产线和DSL通常有很多相似之处,以至于这种"新"的处理方式需要清理其概念。
这就是为什么很难找到有关该主题的良好信息的原因之一。
另一个要点是,acm.org拥有大量的研究文章,各种会议(例如OOPSLA)中的文章的数字图书馆,我们可以在其中找到有关DSL,语言设计,SPL,MDSD等的大量信息。
回答
对我而言,T4示例的最佳来源是此博客。
回答
这里有一些我认为有用的网站:
- 高级代码生成模式
- DslFactoryUtilities
- Dsl工具