2

大约一年来,我一直在使用 Ruby 和其中的许多 Web 框架。

我知道 Rails 主要是使用“元编程”构建的。虽然我试图检查源头,但通常并不是所有的都是有意义的。

我尝试发布一个小 gem,并使用了一些方法,例如_send, instance_evalclass_eval这很酷,但作为一般原则,我们被告知要远离eval它的各种形式。

我知道在哪里可以使用的其他编程结构。就像应用程序中的数据序列化,或者我可以/应该在制作 Web 应用程序时实现构建器模式的地方。

我的问题分为两部分:

  1. 使用元编程的常见或恰当的用例/编程问题是什么?
  2. 使用 ruby​​ 的元编程位时,我应该遵循哪些最佳实践?
4

2 回答 2

2

你用过attr_accessor吗?然后你使用了元编程:它是一种生成方法的方法。

于 2012-11-25T10:51:50.533 回答
1

我发现元编程主要是库 API 的领域。在创建最终用户应用程序时,您通常不会直接使用其中的大部分内容。但是您可以肯定,您的应用程序所依赖的许多 gem 确实广泛使用它。Rails 就是一个很好的例子。它使用了大量 Ruby 的元编程技巧,使 Rails 的所有魔力成为可能。

于 2012-11-25T11:35:38.677 回答