Ruby DSL的一些定义特征是什么,它将它与常规API分开?
使用API时,您将以强制方式实例化对象并
调用方法.另一方面,良好的DSL应该是声明性的,表示问题域中的规则和关系,而不是要执行的指令.此外,理想情况下,DSL应该是非程序员(API不是这种情况)的可读性和可
修改性.
另请注意内部和外部DSL之间的区别.
>内部域特定语言嵌入在编程语言中(例如Ruby).它易于实现,但DSL的结构取决于它所嵌入的父语言.>外部域特定语言是一种单独的语言,在设计时考虑了特定的域.它在语法方面为您提供了更大的灵活性,但您必须实现代码来解释它.它也更安全,因为编辑域规则的人无法访问母语的所有功能.
原文地址:https://www.jb51.cc/ruby/268820.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。