require_dependencyとrequireの違い
require_dependencyとrequireの違い
色々なソースの中でrequire_dependencyというのがでてくるが
いったいどういう意味なのかよく理解できずに利用していました。
自分でかいたことはほぼないのですが
そろそろまじめに調べてみようと思いソースを読もうとしましたが
Googleで調べたら詳しく説明しているサイトが。
http://www.pistolfly.jp/weblog/2007/06/require-dependency.html
まとめると
■require
・Rubyの機能
・指定したRubyファイルを読み込む
・既に当該ファイルがキャッシュ済みならそちらを読みこむ
■require_dependency
・Ruby On Railsの機能
・指定したRubyファイルを読み込む
・既に当該ファイルがキャッシュされていても再度読み込む
というわけで、ロード対象が更新されているときに
再読込を実施するかどうかが異なっているようです。
開発を行うときにはrequire_dependencyのほうが便利そうですね。
なお、Railsの内部では基本的にはrequire_dependencyが使われているようです。
でも、本番環境とかだとパフォーマンスの劣化につながりそうですよね。。。。。
環境別にどういう振る舞いになるのか設定できるとうれしいのですが。。。。。