Ruby DSL与普通API的区别

Ruby DSL的一些定义特征是什么,它将它与常规API分开?

解决方法

使用API​​时,您将以强制方式实例化对象并调用方法.另一方面,良好的DSL应该是声明性的,表示问题域中的规则和关系,而不是要执行的指令.此外,理想情况下,DSL应该是非程序员(API不是这种情况)的可读性和可修改性.

另请注意内部和外部DSL之间的区别.

>内部域特定语言嵌入在编程语言中(例如Ruby).它易于实现,但DSL的结构取决于它所嵌入的父语言.>外部域特定语言是一种单独的语言,在设计时考虑了特定的域.它在语法方面为您提供了更大的灵活性,但您必须实现代码来解释它.它也更安全,因为编辑域规则的人无法访问母语的所有功能.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...