私は約 1 年間、Ruby とその Web フレームワークの多くを扱ってきました。
Rails は主に「メタプログラミング」を使用して構築されていることを認識しています。ソースを調べてみましたが、多くの場合、すべてが理にかなっているとは限りません。
私は小さな宝石を公開しようとし_send
ました.instance_eval
class_eval
eval
使用できる場所を知っている他のプログラミング構造。アプリケーションでのデータのシリアル化や、Web アプリを作成するときに Builder パターンを実装できる/実装する必要がある場所など。
私の質問は2つの部分に分かれています:
- メタプログラミングが使用される一般的または適切なユースケース/プログラミングの問題は何ですか?
- Ruby のメタプログラミング ビットを使用する場合、従うべきベスト プラクティスは何ですか?