大型clojure项目是如何组织的?

Mai*_*tor 9 methods namespaces class file clojure

在大多数编程语言中,您经常使用"命名空间>文件>类>方法"或类似组织.怎么在clojure中完成?

mik*_*era 5

大致是:

namespace > files > vars 
Run Code Online (Sandbox Code Playgroud)

注意:

  • 命名空间经常在单个文件中定义,但不一定是(您可以使用多个文件来定义命名空间)
  • vars可以包含任何内容:函数,Java对象,数据,宏等.大多数情况下,它们将是函数或顶级数据文字
  • 命名空间是动态的:它们可以在运行时修改.如果您愿意,这为您提供了以不同方式组织代码的相当大的灵活性(例如,您可以以编程方式生成和填充命名空间)

也可以看看: