大约一年来,我一直在使用 Ruby 和其中的许多 Web 框架。
我知道 Rails 主要是使用“元编程”构建的。虽然我试图检查源头,但通常并不是所有的都是有意义的。
我尝试发布一个小 gem,并使用了一些方法,例如_send
, instance_eval
,class_eval
这很酷,但作为一般原则,我们被告知要远离eval
它的各种形式。
我知道在哪里可以使用的其他编程结构。就像应用程序中的数据序列化,或者我可以/应该在制作 Web 应用程序时实现构建器模式的地方。
我的问题分为两部分:
- 使用元编程的常见或恰当的用例/编程问题是什么?
- 使用 ruby 的元编程位时,我应该遵循哪些最佳实践?