私はrequire
がファイルを一度だけ読み込み、load
は呼び出すたびに読み込むことを理解しています。Rubyで「require」ではなく「load」を使用するのはいつですか?
ほとんどの状況ではrequire
を使用するのが望ましいと思われます。
私の質問は、load
ではなく、require
を使用するのはいつですか?
私はrequire
がファイルを一度だけ読み込み、load
は呼び出すたびに読み込むことを理解しています。Rubyで「require」ではなく「load」を使用するのはいつですか?
ほとんどの状況ではrequire
を使用するのが望ましいと思われます。
私の質問は、load
ではなく、require
を使用するのはいつですか?
何かを強制的にリロードする必要がある場合(一般的な例は、Webサーバーまたはテストサーバーです)。いくつかのコードがヒットしないか、アプリの読み込み時間の問題に対処したいという合理的な機会があるときは、autoloadを使用するべきです。それ以外の場合はrequireを使用してください。
load "/path/to/file.rb"
一方、必要に一度だけファイルをロードすると.rbの拡張子を指定する必要はありません:
require "/path/to/file"
require "/path/to/file.rb"
私は答えがあなたの質問にあると思います。あなたは書きました:
「一度だけファイルをロードする必要が」?だから今、あなたがファイルか何か外部の変更ファイルを変更した場合、何が起こるか
load
を使用すると、読み込み中に保持される「状態」が得られます。
require
ではありません。
ロードは、以下のようなファイルの完全な名前のパスになりますパフォーマンスを向上させるためにrequireを使用することをお勧めしますが、Railsは開発モードでロードを使用するので、すべての変更時にサーバーを再起動する必要はありません。
ありがとうございます!おそらく、Railsは 'load'を使用しています(' include'ではなく)。 –