10

ほとんどのプログラミング言語では、「名前空間 > ファイル > クラス > メソッド」または同様の構成を持つことがよくあります。これはclojureでどのように行われますか?

4

2 に答える 2

6

おおよそ次のとおりです。

namespace > files > vars 

ご了承ください:

  • 名前空間は単一のファイルで定義されることがよくありますが、そうである必要はありません (複数のファイルを使用して名前空間を定義できます)。
  • vars には、関数、Java オブジェクト、データ、マクロなど、何でも含めることができます。ほとんどの場合、それらは関数またはトップレベルのデータ リテラルのいずれかになります。
  • 名前空間は動的です。実行時に変更できます。これにより、必要に応じてさまざまな方法でコードを整理するための非常に多くの柔軟性が得られます (たとえば、名前空間をプログラムで生成および設定できます)。

以下も参照してください。

于 2012-06-24T19:49:49.070 に答える
0

Clojure 名前空間は Java パッケージであるため、ほとんどの Clojure プログラムは、少なくともパッケージ レベルまでは Java プログラムと同じように編成されています。

パッケージ レベルの後では、多くの Clojure プログラムが Java の対応するプログラムよりもフラットになる傾向があることがわかります。

于 2012-06-25T01:36:02.920 に答える