Ruby の include と require の違いは何ですか? 質問する

Ruby の include と require の違いは何ですか? 質問する

私の質問は「Ruby における include と extend の違いは何ですか?「」。

requireRuby のとの違いは何ですかinclude? クラス内のモジュールのメソッドだけを使用したい場合は、requireit とincludeit のどちらを使用すればよいですか?

ベストアンサー1

Ruby の「include」と「require」の違いは何ですか?

答え:

include メソッドと require メソッドは、まったく異なることを行います。

require メソッドは、他のほとんどのプログラミング言語の include と同じこと、つまり別のファイルを実行します。また、過去に要求されたものを追跡し、同じファイルを 2 回要求することはありません。この追加機能なしで別のファイルを実行するには、load メソッドを使用します。

include メソッドは、別のモジュールからすべてのメソッドを取得し、現在のモジュールに組み込みます。これは、require のようなファイル レベルのものではなく、言語レベルのものです。include メソッドは、他のモジュール (通常はミックスインと呼ばれます) を使用してクラスを「拡張」する主な方法です。たとえば、クラスでメソッド "each" を定義している場合、ミックスイン モジュール Enumerable を組み込むことができ、コレクションとして動作させることができます。include 動詞は他の言語ではまったく異なる方法で使用されているため、混乱を招く可能性があります。

ソース

したがって、モジュールを拡張したりミックスインしたりするのではなく、単にモジュールを使用したい場合は、 を使用する必要がありますrequire

奇妙なことに、Ruby の はrequireC の に類似していますincludeが、Ruby の はincludeC の とほとんど似ていませんinclude

おすすめ記事