2014-12-06 53 views
7

非常first linesinatra它是在Ruby中以最小的努力快速创建Web应用程序DSL。我能理解它重量轻,非常灵活,快速创建Web应用程序和以最小的努力,但无法了解它是如何是DSL?为什么西纳特拉是DSL?

回答

4

的一个原因是它定义动作(“动词”)作为它的方法域内,例如:

get '/hi' do 
    "Hello World!" 
end 

这里西纳特拉已将来自其领域的动作 - 即HTTP请求方法“GET “ - 进入它的”词汇“。

(建设围绕银行业图书馆和定义诸如accountcustomer方法类似。)

这是更多的DSL的真正定义是什么?