19
require
、import
、use
のすべてが必要なのはなぜですか?`require`、` import`、 `use`の違いは何ですか?
require
、import
、use
のすべてが必要なのはなぜですか?`require`、` import`、 `use`の違いは何ですか?
はあなたの現在のファイルまたはREPLでそれを使用できるようにClojureのライブラリをロードし
を必要としています。
これは、Clojureライブラリの関数と定義にアクセスする通常の方法です。
必要として使用
useは同じようにClojureの名前空間にもたらし、それに加えて、それはは(現在のネームスペースからロードされた名前空間の定義をを指し、すなわち、それはで便利なエイリアスを作成します現在の名前空間)。
これを過度に使用しないでください(意図しない) - 名前空間の競合が発生しやすくなります。インポート
は、Javaクラスおよびインタフェースのみをインポートするためのものです。
user=> (import java.util.Date)
java.util.Date
user=> (def *now* (Date.))
#'user/*now*
Javaコードと相互運用する必要がない場合は、インポートを無視しても問題ありません。
この質問には、重複していると誤ってマークされていました。参照される回答は「インポート」を説明しません。これは受け入れられた答えでなければなりません。 – battey